Compare commits

..

79 Commits

Author SHA1 Message Date
Thomas Lamprecht b6d9526601 update ABI file for 5.0.21-5-pve
(generated with debian/scripts/abi-generate)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-11-13 10:53:08 +01:00
Thomas Lamprecht ee7f5b50ad bump version to 5.0.21-10
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-11-13 10:27:55 +01:00
Thomas Lamprecht b9b2d45ed0 rebase patches on top of Ubuntu-5.0.0-35.38
(generated with debian/scripts/import-upstream-tag)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-11-13 10:05:37 +01:00
Thomas Lamprecht 7b833ea615 update sources to Ubuntu-5.0.0-35.38
(generated with debian/scripts/import-upstream-tag)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-11-13 10:05:37 +01:00
Thomas Lamprecht b1cf66bce1 disable alsa snd pcspkr module
The PC speaker (beeper) can only be managed by one module, and there
are two which could do so. The very basic INPUT_PCSPKR, and the more
advanced SND_PCSP which allows it to be used as primitive ALSA
soundcard, which for Proxmox Server projects, and all modern
workstations is not much of use.

As they both were aliased to the "pcspkr" module name, and used the
same internal driver name (being a replacment of the other), one
would get the following error message when both are loaded:
"Error: Driver 'pcspkr' is already registered, aborting..."
in the kernel log. This happens as by default both are tried to get
loaded. We do not want the more complex ALSA one, so disable that.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
(cherry picked from commit b481f89770)
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-11-12 15:45:32 +01:00
Thomas Lamprecht 584fbee1dd backport: KVM: x86: introduce is_pae_paging
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-11-12 13:33:39 +01:00
Thomas Lamprecht 7481faa0a8 update also Makefile version for bump to make lintian test this
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-11-11 15:36:45 +01:00
Thomas Lamprecht 97cd39f070 fix #2448: compile ISO8859-1 NLS as built-in
Allows to mount VFAT devices even if the currently running kernel was
removed before any VFAT, or other FS using the default Native
Language Support module was mounted during the current uptime.

This then could break updating the ESP partitions, which are mounted
with VFAT in a postrm triggered step - so at a time where the current
/lib/modules/... was already removed, and so the NLS could not get
loaded.

While there are a lot of different NLS, our kernel config has:
> CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1"

So compile that module as built-in.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-11-11 14:13:08 +01:00
Thomas Lamprecht 81b7cb8a78 bump version to 5.0.21-9
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-11-11 14:13:08 +01:00
Thomas Lamprecht 03505c4ba3 revert: KVM: x86: Manually calculate reserved bits when loading PDPTRS
Problematic on old Intel CPUs:
https://forum.proxmox.com/threads/pve-kernel-5-0-21-4-pve-cause-debian-guests-to-reboot-loop-on-older-intel-cpus.59377/page-3#post-276413
https://bugzilla.kernel.org/show_bug.cgi?id=205441#c1

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-11-11 11:15:47 +01:00
Thomas Lamprecht f665e167a1 update ABI file for 5.0.21-4-pve
(generated with debian/scripts/abi-generate)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-10-23 19:04:29 +02:00
Thomas Lamprecht 4d749645ab update firmware list
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-10-23 19:04:29 +02:00
Thomas Lamprecht 929ba8531f bump version to 5.0.21-8
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-10-23 19:04:29 +02:00
Thomas Lamprecht 87f2b5c56d update ZFS submodule to 0.8.2-pve2, FPU/SIMD fixes
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-10-23 19:04:29 +02:00
Thomas Lamprecht 46396362f1 rebase patches on top of Ubuntu-5.0.0-33.35
(generated with debian/scripts/import-upstream-tag)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-10-23 17:17:42 +02:00
Thomas Lamprecht 7622a48de8 update sources to Ubuntu-5.0.0-33.35
(generated with debian/scripts/import-upstream-tag)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-10-23 17:17:42 +02:00
Thomas Lamprecht 33060f2711 remove unused patches
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-10-02 17:01:50 +02:00
Thomas Lamprecht 9e34f3e811 update README
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-10-02 17:00:54 +02:00
Thomas Lamprecht 9e3f73d7fb update ABI file for 5.0.21-3-pve
(generated with debian/scripts/abi-generate)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-09-30 10:13:01 +02:00
Thomas Lamprecht 532c58c01e bump version to 5.0.21-7
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-09-30 09:12:03 +02:00
Thomas Lamprecht a488f3834b update ZFS to 0.8.2
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-09-30 07:29:08 +02:00
Thomas Lamprecht 2ad9e087e8 d/export-patchq: ensure all export patches with same diff-algorithm
Se it explicitly to myres, the current (since quite a bit) default of
git, to avoid noise in exports, just because another developer
prefers another algorithm here.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-09-30 07:29:08 +02:00
Thomas Lamprecht e92f137375 bump version to 5.0.21-6
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-09-27 17:17:20 +02:00
Thomas Lamprecht 03b3ea56ff update zfs-supmodule so for new version
so that modinfo shows the new version for the SIMD fixed 0.8.1 based
module

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-09-27 17:14:58 +02:00
Thomas Lamprecht fee072e1ea bump version to 5.0.21-5
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-09-27 15:58:27 +02:00
Thomas Lamprecht 0fc737248b update ZFS submodule to include SIMD FPU regs save/restore
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-09-27 14:43:41 +02:00
Thomas Lamprecht 0570f90d28 backport new FPU register copy helpers
This allows us to fix the ZFS SIMD patch for 5.0 kernel way easier.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-09-27 14:43:41 +02:00
Thomas Lamprecht 97f24aae50 bump version to 5.0.21-4
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-09-20 11:55:44 +02:00
Thomas Lamprecht c4856cd4a3 update to Ubuntu-5.0.0-30.32
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-09-20 11:54:33 +02:00
Thomas Lamprecht ef257cb1b2 config: enable CONFIG_HYPERV
mostly for the PMG as it could run in a HyperV based hypervisor

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-09-20 11:04:37 +02:00
Thomas Lamprecht 0bf2deceb0 update ABI file for 5.0.21-2-pve
(generated with debian/scripts/abi-generate)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-09-05 16:28:38 +02:00
Thomas Lamprecht 4b576962e5 bump version to 5.0.21-3
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-09-05 13:56:36 +02:00
Thomas Lamprecht b671e62ef8 rebase patches on top of Ubuntu-5.0.0-28.30
(generated with debian/scripts/import-upstream-tag)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-09-05 10:26:04 +02:00
Thomas Lamprecht c412f57484 update sources to Ubuntu-5.0.0-28.30
(generated with debian/scripts/import-upstream-tag)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-09-05 10:26:04 +02:00
Thomas Lamprecht 9a85bc6293 bump version to 5.0.21-2
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-08-28 16:00:58 +02:00
Thomas Lamprecht 5e0f6930cb update sources to Ubuntu-5.0.0-27.28
(generated with debian/scripts/import-upstream-tag)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-08-28 16:00:58 +02:00
Thomas Lamprecht e735a4f61a update ABI file for 5.0.21-1-pve
(generated with debian/scripts/abi-generate)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-08-28 16:00:58 +02:00
Thomas Lamprecht b9200da0c5 backport vhost_net: disable zerocopy by default
It seems to make general problems[0], and upstream changed the
default back to 0 again[1] (was enabled long ago, ca. 2012).

[0]: https://pve.proxmox.com/pipermail/pve-devel/2019-August/038571.html
[1]: https://git.kernel.org/torvalds/c/098eadce3c622c07b328d0a43dda379b38cf7c5e

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-08-21 09:50:11 +02:00
Thomas Lamprecht 034edf65bb bump version to 5.0.21-1
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-08-20 17:19:08 +02:00
Thomas Lamprecht 0a42c11516 update ZFS submodule
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-08-20 17:18:45 +02:00
Thomas Lamprecht 118616fd5f rebase patches on top of Ubuntu-5.0.0-26.27
(generated with debian/scripts/import-upstream-tag)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-08-20 17:13:36 +02:00
Thomas Lamprecht 19f71b9581 update sources to Ubuntu-5.0.0-26.27
(generated with debian/scripts/import-upstream-tag)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-08-20 17:13:36 +02:00
Fabian Grünbichler e8791ba811 bump version to 5.0.18-3
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2019-08-08 09:05:43 +02:00
Fabian Grünbichler 81a5bd500f update sources to Ubuntu-5.0.0-25.26
(generated with debian/scripts/import-upstream-tag)

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2019-08-08 09:03:46 +02:00
Fabian Grünbichler 72fa067b74 bump version to 5.0.18-2
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2019-08-05 10:28:17 +02:00
Fabian Grünbichler 91ad2b4323 update sources to Ubuntu-5.0.0-24.25
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2019-08-05 10:28:17 +02:00
Fabian Grünbichler 77b2009b13 build: add ZFS 0.8 debhelper build-dependencies
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2019-08-05 10:27:56 +02:00
Fabian Grünbichler a48f12d308 update ABI file for 5.0.18-1-pve
(generated with debian/scripts/abi-generate)

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2019-08-02 14:54:39 +02:00
Thomas Lamprecht 65bbbdd0ae bump version to 5.0.18-1
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-07-24 16:05:54 +02:00
Thomas Lamprecht f4beb2f868 rebase patches on top of Ubuntu-5.0.0-22.23
(generated with debian/scripts/import-upstream-tag)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-07-24 08:12:25 +02:00
Thomas Lamprecht a895eba453 update sources to Ubuntu-5.0.0-22.23
(generated with debian/scripts/import-upstream-tag)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-07-24 08:12:25 +02:00
Thomas Lamprecht 225d38f866 backport: rbd: don't assert on writes to snapshots
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-07-24 08:11:49 +02:00
Fabian Grünbichler 6c6eb8b0dd fix #327: downgrade dependency on grub-*
from Depends to Recommends, since we now have an alternate bootloader
setup for some scenarios. both our installer and Debian's default setup
still install Grub by default anyway, but this allows removal without
hacks in case such an alternate bootloader is used on the system.

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2019-07-11 14:56:42 +02:00
Thomas Lamprecht de6fe5c8ff update ABI file for 5.0.15-1-pve
(generated with debian/scripts/abi-generate)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-07-03 11:15:52 +02:00
Thomas Lamprecht feed9783c5 update fwlist-previous
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-07-03 11:13:55 +02:00
Thomas Lamprecht d036f79625 bump version to 5.0.15-1
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-07-03 10:52:17 +02:00
Thomas Lamprecht a5002bb04e update submodule sources to Ubuntu-5.0.0-21.22
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-07-03 10:50:09 +02:00
Thomas Lamprecht d74786f737 update ABI file for 5.0.12-1-pve
(generated with debian/scripts/abi-generate)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-06-18 07:53:07 +02:00
Thomas Lamprecht 4daae19966 bump version to 5.0.12-1
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-06-18 07:44:10 +02:00
Thomas Lamprecht ff93581f3f rebase patches on top of Ubuntu-5.0.0-18.19
(generated with debian/scripts/import-upstream-tag)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-06-18 07:28:40 +02:00
Thomas Lamprecht 93ed037e39 update sources to Ubuntu-5.0.0-18.19
(generated with debian/scripts/import-upstream-tag)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-06-18 07:28:40 +02:00
Thomas Lamprecht 8caa9b27c3 build with ZFS 0.8.1
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-06-18 07:28:18 +02:00
Thomas Lamprecht 6ac09c547c revert KVM nested param back to off as default, for now
Else everyone booting the 5.0 based kernel will have nesting
activated by default[0], and this break live migration for all VMs
with CPU type host, even if they do not host KVM (nested) guests
themself and never made a VMX call, at least with newer QEMU versions
>= 3.1 [1]

While the kernel now may had good reasons to change the default to
true for this[0], i.e., it can now handle nested guest migrations in
a nice and sane way, the user space side of this in QEMU is not yet
ready, and may only become so with or even after 4.1.

After we have a working qemu which can also live migrate arbitrary
nested guest we may well enable this as default, but until then it
brings just pain but no advantage.

So let's protect people which did not manually enabled nesting for
a live-migration breakage. All those who enabled nesting manually
them self knew that it was still experimental and thus will have to
live with their decision and have a live migration breakage (for
those VMs with CPU type 'host')

[0]: https://git.kernel.org/torvalds/c/1e58e5e59148916fa43444a406335a990783fb78
[1]: https://git.qemu.org/gitweb.cgi?p=qemu.git;a=commitdiff;h=d98f26073bebddcd3da0ba1b86c3a34e840c0fb8

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-06-08 20:12:35 +02:00
Thomas Lamprecht faed21722c update ABI file for 5.0.8-2-pve
(generated with debian/scripts/abi-generate)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-05-25 19:16:57 +02:00
Thomas Lamprecht fdf82cf531 bump version to 5.0.1-2
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-05-25 18:54:06 +02:00
Thomas Lamprecht b76c223cac followup: buildsys: fix initializing submodules and do so recursively
"${ZFSONLINUX_SUBMODULE}/upstream/README.markdown" does not exists
anymore, if it'd be ".../README.md", but actually lets just switch
over to a recursive initialization and be done with it..

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-05-25 18:17:55 +02:00
Stoiko Ivanov 3c4b3fd82f update ZFS on Linux to 0.8
Signed-off-by: Stoiko Ivanov <s.ivanov@proxmox.com>
2019-05-24 14:59:47 +02:00
Stoiko Ivanov 1de1353133 adapt debian/rules to ZFS 0.8 structure
Signed-off-by: Stoiko Ivanov <s.ivanov@proxmox.com>
2019-05-24 14:59:47 +02:00
Stoiko Ivanov 5fa6b6aee2 adapt global Makefile to ZFS 0.8 structure
Signed-off-by: Stoiko Ivanov <s.ivanov@proxmox.com>
2019-05-24 14:59:47 +02:00
Thomas Lamprecht 2552aa9d09 buildsys: switch upload dist over to buster
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-05-22 16:27:40 +02:00
Thomas Lamprecht 2135c72329 remove gcc check completely, we have build dependencies for that
RETPOLINE is now for sure included, further as this is build through
buildpackage the build dependencies are checked

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-05-22 15:42:57 +02:00
Thomas Lamprecht b8e09c3c69 support gcc 8.3 from buster
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-05-22 15:42:57 +02:00
Thomas Lamprecht 3f2c044fbf bump version to 5.0.8-1
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-05-22 15:42:57 +02:00
Thomas Lamprecht a8f81bcf2b update fwlist-previous
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-05-22 15:42:57 +02:00
Thomas Lamprecht d6d2efea0c replace obsoleted 'silentoldconfig' kernel make target with 'syncconfig'
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-05-22 15:42:57 +02:00
Thomas Lamprecht d7b1c00b9d find-firmware: check for 5.0 versioned directory
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-05-22 15:42:57 +02:00
Thomas Lamprecht 1e51973430 use in tree igb and e1000 module for now
the current OOT are not compatible with 5.0 and we want to obsolete
them anyway sooner or later

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-05-22 15:42:57 +02:00
Thomas Lamprecht ff71f8b949 update patches for 5.0.8
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-05-22 14:11:57 +02:00
Thomas Lamprecht 117c2cd60c move from ubuntu-bionic to ubuntu-disco submodule
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-05-22 13:52:55 +02:00
32 changed files with 23983 additions and 24023 deletions
+3 -3
View File
@@ -1,6 +1,6 @@
[submodule "submodules/zfsonlinux"]
path = submodules/zfsonlinux
url = ../zfsonlinux
[submodule "submodules/ubuntu-bionic"]
path = submodules/ubuntu-bionic
url = ../mirror_ubuntu-bionic-kernel
[submodule "submodules/ubuntu-disco"]
path = submodules/ubuntu-disco
url = ../mirror_ubuntu-disco-kernel
+13 -52
View File
@@ -1,12 +1,12 @@
# also bump pve-kernel-meta if either of MAJ.MIN, PATCHLEVEL or KREL change
KERNEL_MAJ=4
KERNEL_MIN=15
KERNEL_PATCHLEVEL=18
KERNEL_MAJ=5
KERNEL_MIN=0
KERNEL_PATCHLEVEL=21
# increment KREL if the ABI changes (abicheck target in debian/rules)
# rebuild packages with new KREL and run 'make abiupdate'
KREL=30
KREL=5
PKGREL=58
PKGREL=10
KERNEL_MAJMIN=$(KERNEL_MAJ).$(KERNEL_MIN)
KERNEL_VER=$(KERNEL_MAJMIN).$(KERNEL_PATCHLEVEL)
@@ -29,33 +29,20 @@ GITVERSION:=$(shell git rev-parse HEAD)
SKIPABI=0
ifeq ($(CC), cc)
GCC=gcc
else
GCC=$(CC)
endif
BUILD_DIR=build
KERNEL_SRC=ubuntu-bionic
KERNEL_SRC=ubuntu-disco
KERNEL_SRC_SUBMODULE=submodules/$(KERNEL_SRC)
KERNEL_CFG_ORG=config-${KERNEL_VER}.org
E1000EDIR=e1000e-3.4.1.1
E1000ESRC=${E1000EDIR}.tar.gz
IGBDIR=igb-5.3.5.18
IGBSRC=${IGBDIR}.tar.gz
ZFSONLINUX_SUBMODULE=submodules/zfsonlinux
SPLDIR=pkg-spl
ZFSDIR=pkg-zfs
MODULES=modules
MODULE_DIRS=${E1000EDIR} ${IGBDIR} ${SPLDIR} ${ZFSDIR}
MODULE_DIRS=${ZFSDIR}
# exported to debian/rules via debian/rules.d/dirs.mk
DIRS=KERNEL_SRC E1000EDIR IGBDIR SPLDIR ZFSDIR MODULES
DIRS=KERNEL_SRC ZFSDIR MODULES
DST_DEB=${PACKAGE}_${KERNEL_VER}-${PKGREL}_${ARCH}.deb
HDR_DEB=${HDRPACKAGE}_${KERNEL_VER}-${PKGREL}_${ARCH}.deb
@@ -63,17 +50,9 @@ LINUX_TOOLS_DEB=linux-tools-$(KERNEL_MAJMIN)_${KERNEL_VER}-${PKGREL}_${ARCH}.deb
DEBS=${DST_DEB} ${HDR_DEB} ${LINUX_TOOLS_DEB}
all: check_gcc deb
all: deb
deb: ${DEBS}
check_gcc:
$(GCC) --version|grep "6\.3" || false
@$(GCC) -Werror -mindirect-branch=thunk-extern -mindirect-branch-register -c -x c /dev/null -o check_gcc.o \
|| ( rm -f check_gcc.o; \
echo "Please install gcc-6 packages with indirect thunk / RETPOLINE support"; \
false)
@rm -f check_gcc.o
${LINUX_TOOLS_DEB} ${HDR_DEB}: ${DST_DEB}
${DST_DEB}: ${BUILD_DIR}.prepared
cd ${BUILD_DIR}; dpkg-buildpackage --jobs=auto -b -uc -us
@@ -113,34 +92,17 @@ ${KERNEL_SRC}.prepared: ${KERNEL_SRC_SUBMODULE} | submodule
${MODULES}.prepared: $(addsuffix .prepared,${MODULE_DIRS})
touch $@
${E1000EDIR}.prepared: ${E1000ESRC}
rm -rf ${BUILD_DIR}/${MODULES}/${E1000EDIR} $@
mkdir -p ${BUILD_DIR}/${MODULES}/${E1000EDIR}
tar --strip-components=1 -C ${BUILD_DIR}/${MODULES}/${E1000EDIR} -xf ${E1000ESRC}
cd ${BUILD_DIR}/${MODULES}/${E1000EDIR}; patch -p1 < ../../../patches/intel/intel-module-gcc6-compat.patch
cd ${BUILD_DIR}/${MODULES}/${E1000EDIR}; patch -p1 < ../../../patches/intel/e1000e/e1000e_4.10_max-mtu.patch
cd ${BUILD_DIR}/${MODULES}/${E1000EDIR}; patch -p1 < ../../../patches/intel/e1000e/e1000e_4.15-new-timer.patch
touch $@
${IGBDIR}.prepared: ${IGBSRC}
rm -rf ${BUILD_DIR}/${MODULES}/${IGBDIR} $@
mkdir -p ${BUILD_DIR}/${MODULES}/${IGBDIR}
tar --strip-components=1 -C ${BUILD_DIR}/${MODULES}/${IGBDIR} -xf ${IGBSRC}
cd ${BUILD_DIR}/${MODULES}/${IGBDIR}; patch -p1 < ../../../patches/intel/igb/igb_4.15_mtu.patch
touch $@
${SPLDIR}.prepared: ${ZFSDIR}.prepared
${ZFSDIR}.prepared: ${ZFSONLINUX_SUBMODULE}
rm -rf ${BUILD_DIR}/${MODULES}/${SPLDIR} ${BUILD_DIR}/${MODULES}/${ZFSDIR} ${BUILD_DIR}/${MODULES}/tmp $@
rm -rf ${BUILD_DIR}/${MODULES}/${ZFSDIR} ${BUILD_DIR}/${MODULES}/tmp $@
mkdir -p ${BUILD_DIR}/${MODULES}/tmp
cp -a ${ZFSONLINUX_SUBMODULE}/* ${BUILD_DIR}/${MODULES}/tmp
cd ${BUILD_DIR}/${MODULES}/tmp; make kernel
rm -rf ${BUILD_DIR}/${MODULES}/tmp
touch ${ZFSDIR}.prepared ${SPLDIR}.prepared
touch ${ZFSDIR}.prepared
.PHONY: upload
upload: ${DEBS}
tar cf - ${DEBS}|ssh -X repoman@repo.proxmox.com -- upload --product pve,pmg --dist stretch --arch ${ARCH}
tar cf - ${DEBS}|ssh -X repoman@repo.proxmox.com -- upload --product pve,pmg --dist buster --arch ${ARCH}
.PHONY: distclean
distclean: clean
@@ -156,8 +118,7 @@ update_modules: submodule
.PHONY: submodule
submodule:
test -f "${KERNEL_SRC_SUBMODULE}/README" || git submodule update --init ${KERNEL_SRC_SUBMODULE}
test -f "${ZFSONLINUX_SUBMODULE}/Makefile" || git submodule update --init ${ZFSONLINUX_SUBMODULE}
(test -f "${ZFSONLINUX_SUBMODULE}/zfs/upstream/README.markdown" && test -f "${ZFSONLINUX_SUBMODULE}/spl/upstream/README.markdown") || (cd ${ZFSONLINUX_SUBMODULE}; git submodule update --init)
test -f "${ZFSONLINUX_SUBMODULE}/Makefile" || git submodule update --init --recursive ${ZFSONLINUX_SUBMODULE}
# call after ABI bump with header deb in working directory
.PHONY: abiupdate
+1 -5
View File
@@ -3,7 +3,7 @@ KERNEL SOURCE:
We currently use the Ubuntu kernel sources, available from:
http://kernel.ubuntu.com/git/ubuntu/ubuntu-bionic.git/
http://kernel.ubuntu.com/git/ubuntu/ubuntu-disco.git/
Ubuntu will maintain those kernels till:
@@ -13,10 +13,6 @@ Ubuntu will maintain those kernels till:
Additional/Updated Modules:
---------------------------
- include latest e1000e driver from intel/sourceforge
- include latest igb driver from intel/sourceforge
- include native OpenZFS filesystem kernel modules for Linux
* https://github.com/zfsonlinux/
File diff suppressed because it is too large Load Diff
+23297
View File
File diff suppressed because it is too large Load Diff
+89 -103
View File
@@ -1,150 +1,136 @@
pve-kernel (4.15.18-58) pve pmg; urgency=medium
pve-kernel (5.0.21-10) pve pmg; urgency=medium
* update to Ubuntu-4.15.0-107.108
* update to Ubuntu-5.0.0-35.38
* bump ABI to 4.15.18-30
* bump ABI to 5.0.21-5
-- Proxmox Support Team <support@proxmox.com> Fri, 12 Jun 2020 13:53:01 +0200
* avoid bouds error message about PC Speaker module being already registered
pve-kernel (4.15.18-57) pve pmg; urgency=medium
-- Proxmox Support Team <support@proxmox.com> Wed, 13 Nov 2019 08:27:10 +0100
* update to Ubuntu-4.15.0-102.103
* bump ABI to 4.15.18-29
-- Proxmox Support Team <support@proxmox.com> Mon, 18 May 2020 14:34:54 +0200
pve-kernel (4.15.18-56) pve pmg; urgency=medium
* update to Ubuntu-4.15.0-97.98
* bump ABI to 4.15.18-28
-- Proxmox Support Team <support@proxmox.com> Wed, 08 Apr 2020 20:06:11 +0200
pve-kernel (4.15.18-55) pve pmg; urgency=medium
* update to Ubuntu-4.15.0-92.93
* bump ABI to 4.15.18-27
-- Proxmox Support Team <support@proxmox.com> Tue, 17 Mar 2020 15:32:02 +0100
pve-kernel (4.15.18-54) pve pmg; urgency=medium
* update to Ubuntu-4.15.0-89.89
* bump ABI to 4.15.18-26
-- Proxmox Support Team <support@proxmox.com> Sat, 15 Feb 2020 15:34:24 +0100
pve-kernel (4.15.18-53) pve pmg; urgency=medium
* update to Ubuntu-4.15.0-87.87
* bump ABI to 4.15.18-25
-- Proxmox Support Team <support@proxmox.com> Wed, 05 Feb 2020 11:58:15 +0100
pve-kernel (4.15.18-52) pve pmg; urgency=medium
* update to Ubuntu-4.15.0-73.82
* bump ABI to 4.15.18-24
-- Proxmox Support Team <support@proxmox.com> Thu, 05 Dec 2019 10:14:17 +0100
pve-kernel (4.15.18-51) pve pmg; urgency=medium
* update to Ubuntu-4.15.0-69.78
* avoid bogus error message about PC Speaker module being already registered
on boot
* bump ABI to 4.15.18-23
-- Proxmox Support Team <support@proxmox.com> Wed, 13 Nov 2019 11:20:34 +0100
pve-kernel (4.15.18-50) pve pmg; urgency=medium
* update to Ubuntu-4.15.0-68.77
pve-kernel (5.0.21-9) pve pmg; urgency=medium
* fix #2458: fix issues with Linux KVM guest on old Intel CPUs
-- Proxmox Support Team <support@proxmox.com> Mon, 11 Nov 2019 15:28:06 +0100
-- Proxmox Support Team <support@proxmox.com> Mon, 11 Nov 2019 14:12:37 +0100
pve-kernel (4.15.18-49) pve pmg; urgency=medium
pve-kernel (5.0.21-8) pve pmg; urgency=medium
* update to Ubuntu-4.15.0-67.76
* update to Ubuntu-5.0.0-33.35
* bump ABI to 4.15.18-22
* bump ABI to 5.0.21-4
-- Proxmox Support Team <support@proxmox.com> Wed, 23 Oct 2019 20:39:55 +0200
* update ZFS FPU/SIMD implementation to upstream proposal
pve-kernel (4.15.18-48) pve pmg; urgency=medium
-- Proxmox Support Team <support@proxmox.com> Wed, 23 Oct 2019 17:49:13 +0200
* update to Ubuntu-4.15.0-65.74
pve-kernel (5.0.21-7) pve pmg; urgency=medium
-- Proxmox Support Team <support@proxmox.com> Fri, 20 Sep 2019 11:28:30 +0200
* update ZFS to 0.8.2
pve-kernel (4.15.18-47) pve pmg; urgency=medium
* bump ABI to 5.0.21-3
* update to Ubuntu-4.15.0-63.72
-- Proxmox Support Team <support@proxmox.com> Mon, 30 Sep 2019 09:11:02 +0200
* bump ABI to 4.15.18-21
pve-kernel (5.0.21-6) pve pmg; urgency=medium
-- Proxmox Support Team <support@proxmox.com> Fri, 06 Sep 2019 16:08:32 +0200
* backport new FPU register copy helpers
pve-kernel (4.15.18-46) pve pmg; urgency=medium
* ZFS SIMD: FPU register save/restore is also required on 5.0 kernels
* update to Ubuntu-4.15.0-58.64
-- Proxmox Support Team <support@proxmox.com> Fri, 27 Sep 2019 17:17:02 +0200
* bump ABI to 4.15.18-20
pve-kernel (5.0.21-4) pve pmg; urgency=medium
-- Proxmox Support Team <support@proxmox.com> Thu, 8 Aug 2019 10:42:06 +0200
* update to Ubuntu-5.0.0-30.32
pve-kernel (4.15.18-45) unstable; urgency=medium
-- Proxmox Support Team <support@proxmox.com> Fri, 20 Sep 2019 11:55:17 +0200
* update to Ubuntu-4.15.0-56.62
pve-kernel (5.0.21-3) pve pmg; urgency=medium
* bump ABI to 4.15.18-19
* update sources to Ubuntu-5.0.0-28.30
-- Proxmox Support Team <support@proxmox.com> Fri, 26 Jul 2019 09:34:08 +0200
* bump ABI to 5.0.21-2
pve-kernel (4.15.18-44) unstable; urgency=medium
-- Proxmox Support Team <support@proxmox.com> Thu, 05 Sep 2019 13:56:01 +0200
* update to Ubuntu-4.15.0-55.60
pve-kernel (5.0.21-2) pve pmg; urgency=medium
* bump ABI to 4.15.18-18
* update sources to Ubuntu-5.0.0-27.28
-- Proxmox Support Team <support@proxmox.com> Wed, 03 Jul 2019 11:19:13 +0200
* backport vhost_net: disable zerocopy by default
pve-kernel (4.15.18-43) unstable; urgency=medium
-- Proxmox Support Team <support@proxmox.com> Wed, 28 Aug 2019 15:12:18 +0200
* backport refinement for TCP SACK mitigations to avoid regressions for some
clients
pve-kernel (5.0.21-1) pve pmg; urgency=medium
-- Proxmox Support Team <support@proxmox.com> Tue, 25 Jun 2019 17:59:49 +0200
* update sources to Ubuntu-5.0.0-26.27
pve-kernel (4.15.18-42) unstable; urgency=medium
* update ZFS to include SIMD compat patch for newer Kernel
* update sources to Ubuntu-4.15.0-53.57
* bump ABI to 5.0.21-1
* bump ABI to 4.15.18-17
-- Proxmox Support Team <support@proxmox.com> Tue, 20 Aug 2019 17:16:32 +0200
-- Proxmox Support Team <support@proxmox.com> Fri, 21 Jun 2019 06:45:23 +0200
pve-kernel (5.0.18-3) pve pmg; urgency=medium
pve-kernel (4.15.18-41) unstable; urgency=medium
* update sources to Ubuntu-5.0.0-25.26
* update sources to Ubuntu-4.15.0-52.56
-- Proxmox Support Team <support@proxmox.com> Thu, 8 Aug 2019 09:05:29 +0200
* backport: KVM: x86: Emulate MSR_IA32_ARCH_CAPABILITIES on AMD hosts
pve-kernel (5.0.18-2) pve pmg; urgency=medium
* backport: net: rds: force to destroy connection if t_sock is NULL in rds_tcp_kill_sock()
* update sources to Ubuntu-5.0.0-24.25
* bump ABI to 4.15.18-16
-- Proxmox Support Team <support@proxmox.com> Fri, 2 Aug 2019 14:51:00 +0200
-- Proxmox Support Team <support@proxmox.com> Tue, 18 Jun 2019 07:36:54 +0200
pve-kernel (5.0.18-1) pve pmg; urgency=medium
* update sources to Ubuntu-5.0.0-22.23
* bump ABI to 5.0.18-1
* backport "rbd: don't assert on writes to snapshots" to fix issues with
DISCARD operations on Ceph RBD backed block devices during a snapshot
operation.
-- Proxmox Support Team <support@proxmox.com> Wed, 24 Jul 2019 08:13:30 +0200
pve-kernel (5.0.15-1) pve pmg; urgency=medium
* update to Ubuntu-5.0.0-21.22
* bump ABI to 5.0.15-1
-- Proxmox Support Team <support@proxmox.com> Wed, 03 Jul 2019 10:51:57 +0200
pve-kernel (5.0.12-1) pve pmg; urgency=medium
* update sources to Ubuntu-5.0.0-18.19
* update to ZFS 0.8.1
* revert KVM nested option default back to off
-- Proxmox Support Team <support@proxmox.com> Sat, 15 Jun 2019 11:39:18 +0200
pve-kernel (5.0.8-2) pve pmg; urgency=medium
* update to ZFS 0.8.0
* bump ABI to 5.0.8-2
-- Proxmox Support Team <support@proxmox.com> Fri, 24 May 2019 20:38:04 +0200
pve-kernel (5.0.8-1) pve pmg; urgency=medium
* update to Ubuntu-5.0.0-16.17
* bump ABI to 5.0.8-1
* build for Debian Buster / PVE/PMG 6
-- Proxmox Support Team <support@proxmox.com> Wed, 22 May 2019 14:06:59 +0200
pve-kernel (4.15.18-40) unstable; urgency=medium
+4 -2
View File
@@ -8,9 +8,10 @@ Build-Depends: asciidoc-base,
bison,
cpio,
debhelper (>= 10~),
dh-python,
file,
flex,
gcc-6 (>= 6.3.0-18+deb9u1),
gcc (>= 8.3.0-6),
git,
kmod,
libdw-dev,
@@ -26,6 +27,7 @@ Build-Depends: asciidoc-base,
python-minimal,
rsync,
sed,
sphinx-common,
tar,
xmlto,
zlib1g-dev,
@@ -62,7 +64,7 @@ Provides: linux-image,
linux-image-2.6,
Suggests: pve-firmware,
Depends: busybox,
grub-pc | grub-efi-amd64 | grub-efi-ia32 | grub-efi-arm64,
initramfs-tools,
Recommends: grub-pc | grub-efi-amd64 | grub-efi-ia32 | grub-efi-arm64,
Description: The Proxmox PVE Kernel Image
This package contains the linux kernel and initial ramdisk used for booting
+9 -25
View File
@@ -38,12 +38,14 @@ PVE_CONFIG_OPTS= \
-e CONFIG_BLK_DEV_SR \
-e CONFIG_BLK_DEV_DM \
-e CONFIG_BLK_DEV_NVME \
-e CONFIG_NLS_ISO8859_1 \
-d CONFIG_INPUT_EVBUG \
-d CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND \
-e CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE \
-d CONFIG_MODULE_SIG \
-d CONFIG_MEMCG_DISABLED \
-e CONFIG_MEMCG_SWAP_ENABLED \
-e CONFIG_HYPERV \
-e CONFIG_MEMCG_KMEM \
-d CONFIG_DEFAULT_CFQ \
-e CONFIG_DEFAULT_DEADLINE \
@@ -104,13 +106,9 @@ binary: install
install -m 644 ${KERNEL_SRC}/System.map debian/${PVE_KERNEL_PKG}/boot/System.map-${KVNAME}
install -m 644 ${KERNEL_SRC}/${KERNEL_IMAGE_PATH} debian/${PVE_KERNEL_PKG}/boot/${KERNEL_INSTALL_FILE}-${KVNAME}
${MAKE} -C ${KERNEL_SRC} INSTALL_MOD_PATH=${BUILD_DIR}/debian/${PVE_KERNEL_PKG}/ modules_install
## install latest ibg driver
install -m 644 ${MODULES}/igb.ko debian/${PVE_KERNEL_PKG}/lib/modules/${KVNAME}/kernel/drivers/net/ethernet/intel/igb/
# install latest e1000e driver
install -m 644 ${MODULES}/e1000e.ko debian/${PVE_KERNEL_PKG}/lib/modules/${KVNAME}/kernel/drivers/net/ethernet/intel/e1000e/
# install zfs drivers
install -d -m 0755 debian/${PVE_KERNEL_PKG}/lib/modules/${KVNAME}/zfs
install -m 644 $(addprefix ${MODULES}/,spl.ko splat.ko zfs.ko zavl.ko znvpair.ko zunicode.ko zcommon.ko zpios.ko icp.ko) debian/${PVE_KERNEL_PKG}/lib/modules/${KVNAME}/zfs
install -m 644 $(addprefix ${MODULES}/,zfs.ko zavl.ko znvpair.ko zunicode.ko zcommon.ko icp.ko zlua.ko spl.ko) debian/${PVE_KERNEL_PKG}/lib/modules/${KVNAME}/zfs
# remove firmware
rm -rf debian/${PVE_KERNEL_PKG}/lib/firmware
# strip debug info
@@ -180,7 +178,7 @@ binary: install
rm -rf ${BUILD_DIR}/${KERNEL_SRC_COPY}/${PVE_HEADER_PKG}
mkdir -p ${BUILD_DIR}/${KERNEL_SRC_COPY}/${PVE_HEADER_PKG}
cp ${KERNEL_SRC}/.config ${BUILD_DIR}/${KERNEL_SRC_COPY}/${PVE_HEADER_PKG}/.config
${MAKE} -C ${KERNEL_SRC_COPY} O=${BUILD_DIR}/${KERNEL_SRC_COPY}/${PVE_HEADER_PKG} -j1 silentoldconfig prepare scripts
${MAKE} -C ${KERNEL_SRC_COPY} O=${BUILD_DIR}/${KERNEL_SRC_COPY}/${PVE_HEADER_PKG} -j1 syncconfig prepare scripts
find ${BUILD_DIR}/${KERNEL_SRC_COPY}/${PVE_HEADER_PKG} -name \*.o.ur-\* | xargs rm -f
rsync --ignore-existing -r -v -a $(addprefix ${BUILD_DIR}/${KERNEL_SRC_COPY}/${PVE_HEADER_PKG}/,arch include kernel scripts tools) ${BUILD_DIR}/debian/${PVE_HEADER_PKG}/usr/src/linux-headers-${KVNAME}/
rm -rf ${BUILD_DIR}/${KERNEL_SRC_COPY}
@@ -193,35 +191,21 @@ binary: install
ln -sf /usr/src/linux-headers-${KVNAME} debian/${PVE_HEADER_PKG}/lib/modules/${KVNAME}/build
touch $@
.modules_compile_mark: $(addprefix ${MODULES}/,igb.ko e1000e.ko spl.ko zfs.ko)
.modules_compile_mark: ${MODULES}/zfs.ko
touch $@
${MODULES}/spl.ko: .compile_mark
cd ${MODULES}/${SPLDIR}; ./autogen.sh
cd ${MODULES}/${SPLDIR}; ./configure --with-config=kernel --with-linux=${BUILD_DIR}/${KERNEL_SRC} --with-linux-obj=${BUILD_DIR}/${KERNEL_SRC}
${MAKE} -C ${MODULES}/${SPLDIR}
cp ${MODULES}/${SPLDIR}/module/splat/splat.ko ${MODULES}/
cp ${MODULES}/${SPLDIR}/module/spl/spl.ko ${MODULES}/
${MODULES}/zfs.ko: .compile_mark ${MODULES}/spl.ko
${MODULES}/zfs.ko: .compile_mark
cd ${MODULES}/${ZFSDIR}; ./autogen.sh
cd ${MODULES}/${ZFSDIR}; ./configure --with-spl=${BUILD_DIR}/${MODULES}/${SPLDIR} --with-spl-obj=${BUILD_DIR}/${MODULES}/${SPLDIR} --with-config=kernel --with-linux=${BUILD_DIR}/${KERNEL_SRC} --with-linux-obj=${BUILD_DIR}/${KERNEL_SRC}
cd ${MODULES}/${ZFSDIR}; ./configure --with-config=kernel --with-linux=${BUILD_DIR}/${KERNEL_SRC} --with-linux-obj=${BUILD_DIR}/${KERNEL_SRC}
${MAKE} -C ${MODULES}/${ZFSDIR}
cp ${MODULES}/${ZFSDIR}/module/avl/zavl.ko ${MODULES}/
cp ${MODULES}/${ZFSDIR}/module/nvpair/znvpair.ko ${MODULES}/
cp ${MODULES}/${ZFSDIR}/module/unicode/zunicode.ko ${MODULES}/
cp ${MODULES}/${ZFSDIR}/module/zcommon/zcommon.ko ${MODULES}/
cp ${MODULES}/${ZFSDIR}/module/zpios/zpios.ko ${MODULES}/
cp ${MODULES}/${ZFSDIR}/module/icp/icp.ko ${MODULES}/
cp ${MODULES}/${ZFSDIR}/module/zfs/zfs.ko ${MODULES}/
${MODULES}/igb.ko: .compile_mark
${MAKE} -C ${MODULES}/${IGBDIR}/src BUILD_KERNEL=${KVNAME} KSRC=${BUILD_DIR}/${KERNEL_SRC}
cp ${MODULES}/${IGBDIR}/src/igb.ko ${MODULES}/
${MODULES}/e1000e.ko: .compile_mark
${MAKE} -C ${MODULES}/${E1000EDIR}/src BUILD_KERNEL=${KVNAME} KSRC=${BUILD_DIR}/${KERNEL_SRC}
cp ${MODULES}/${E1000EDIR}/src/e1000e.ko ${MODULES}/
cp ${MODULES}/${ZFSDIR}/module/lua/zlua.ko ${MODULES}/
cp ${MODULES}/${ZFSDIR}/module/spl/spl.ko ${MODULES}/
fwlist-${KVNAME}: .compile_mark .modules_compile_mark
debian/scripts/find-firmware.pl debian/${PVE_KERNEL_PKG}/lib/modules/${KVNAME} >fwlist.tmp
+1
View File
@@ -25,6 +25,7 @@ git format-patch \
--no-cover-letter \
--zero-commit \
--no-signature \
--diff-algorithm=myers \
--output-dir \
"${top}/${kernel_patchdir}" \
"${base_ref}.."
+1 -1
View File
@@ -8,7 +8,7 @@ die "no directory to scan" if !$dir;
die "no such directory" if ! -d $dir;
die "strange directory name" if $dir !~ m|^(.*/)?(4.15.\d+\-\d+\-pve)(/+)?$|;
die "strange directory name" if $dir !~ m|^(.*/)?(5.0.\d+\-\d+\-pve)(/+)?$|;
my $apiver = $2;
Binary file not shown.
+267 -138
View File
@@ -14,6 +14,19 @@ advansys/mcode.bin kernel/drivers/scsi/advansys.ko
agere_ap_fw.bin kernel/drivers/net/wireless/intersil/orinoco/orinoco.ko
agere_sta_fw.bin kernel/drivers/net/wireless/intersil/orinoco/orinoco.ko
aic94xx-seq.fw kernel/drivers/scsi/aic94xx/aic94xx.ko
amdgpu/banks_k_2_smc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/bonaire_ce.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/bonaire_k_smc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/bonaire_mc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/bonaire_me.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/bonaire_mec.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/bonaire_pfp.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/bonaire_rlc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/bonaire_sdma1.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/bonaire_sdma.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/bonaire_smc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/bonaire_uvd.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/bonaire_vce.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/carrizo_ce.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/carrizo_me.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/carrizo_mec2.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
@@ -35,8 +48,81 @@ amdgpu/fiji_sdma.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/fiji_smc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/fiji_uvd.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/fiji_vce.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/hainan_ce.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/hainan_k_smc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/hainan_mc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/hainan_me.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/hainan_pfp.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/hainan_rlc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/hainan_smc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/hawaii_ce.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/hawaii_k_smc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/hawaii_mc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/hawaii_me.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/hawaii_mec.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/hawaii_pfp.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/hawaii_rlc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/hawaii_sdma1.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/hawaii_sdma.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/hawaii_smc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/hawaii_uvd.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/hawaii_vce.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/kabini_ce.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/kabini_me.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/kabini_mec.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/kabini_pfp.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/kabini_rlc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/kabini_sdma1.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/kabini_sdma.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/kabini_uvd.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/kabini_vce.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/kaveri_ce.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/kaveri_me.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/kaveri_mec2.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/kaveri_mec.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/kaveri_pfp.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/kaveri_rlc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/kaveri_sdma1.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/kaveri_sdma.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/kaveri_uvd.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/kaveri_vce.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/mullins_ce.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/mullins_me.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/mullins_mec.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/mullins_pfp.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/mullins_rlc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/mullins_sdma1.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/mullins_sdma.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/mullins_uvd.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/mullins_vce.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/oland_ce.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/oland_k_smc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/oland_mc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/oland_me.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/oland_pfp.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/oland_rlc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/oland_smc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/picasso_asd.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/picasso_ce.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/picasso_gpu_info.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/picasso_me.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/picasso_mec2.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/picasso_mec.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/picasso_pfp.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/picasso_rlc_am4.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/picasso_rlc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/picasso_sdma.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/picasso_vcn.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/pitcairn_ce.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/pitcairn_k_smc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/pitcairn_mc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/pitcairn_me.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/pitcairn_pfp.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/pitcairn_rlc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/pitcairn_smc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/polaris10_ce_2.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/polaris10_ce.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/polaris10_k2_smc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/polaris10_k_mc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/polaris10_k_smc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/polaris10_mc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
@@ -57,6 +143,7 @@ amdgpu/polaris10_uvd.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/polaris10_vce.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/polaris11_ce_2.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/polaris11_ce.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/polaris11_k2_smc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/polaris11_k_mc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/polaris11_k_smc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/polaris11_mc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
@@ -78,6 +165,7 @@ amdgpu/polaris11_vce.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/polaris12_ce_2.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/polaris12_ce.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/polaris12_k_mc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/polaris12_k_smc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/polaris12_mc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/polaris12_me_2.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/polaris12_me.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
@@ -93,8 +181,19 @@ amdgpu/polaris12_sdma.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/polaris12_smc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/polaris12_uvd.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/polaris12_vce.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/raven2_asd.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/raven2_ce.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/raven2_gpu_info.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/raven2_me.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/raven2_mec2.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/raven2_mec.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/raven2_pfp.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/raven2_rlc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/raven2_sdma.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/raven2_vcn.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/raven_asd.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/raven_ce.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/raven_dmcu.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/raven_gpu_info.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/raven_me.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/raven_mec2.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
@@ -103,6 +202,7 @@ amdgpu/raven_pfp.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/raven_rlc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/raven_sdma.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/raven_vcn.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/si58_mc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/stoney_ce.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/stoney_me.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/stoney_mec.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
@@ -111,6 +211,12 @@ amdgpu/stoney_rlc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/stoney_sdma.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/stoney_uvd.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/stoney_vce.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/tahiti_ce.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/tahiti_mc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/tahiti_me.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/tahiti_pfp.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/tahiti_rlc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/tahiti_smc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/tonga_ce.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/tonga_k_smc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/tonga_mc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
@@ -149,6 +255,52 @@ amdgpu/vega10_smc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/vega10_sos.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/vega10_uvd.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/vega10_vce.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/vega12_asd.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/vega12_ce.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/vega12_gpu_info.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/vega12_me.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/vega12_mec2.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/vega12_mec.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/vega12_pfp.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/vega12_rlc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/vega12_sdma1.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/vega12_sdma.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/vega12_smc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/vega12_sos.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/vega12_uvd.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/vega12_vce.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/vega20_asd.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/vega20_ce.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/vega20_me.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/vega20_mec2.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/vega20_mec.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/vega20_pfp.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/vega20_rlc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/vega20_sdma1.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/vega20_sdma.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/vega20_smc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/vega20_sos.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/vega20_ta.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/vega20_uvd.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/vega20_vce.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/vegam_ce.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/vegam_me.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/vegam_mec2.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/vegam_mec.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/vegam_pfp.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/vegam_rlc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/vegam_sdma1.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/vegam_sdma.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/vegam_smc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/vegam_uvd.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/vegam_vce.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/verde_ce.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/verde_k_smc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/verde_mc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/verde_me.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/verde_pfp.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/verde_rlc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
amdgpu/verde_smc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
ar5523.bin kernel/drivers/net/wireless/ath/ar5523/ar5523.ko
asihpi/dsp5000.bin kernel/sound/pci/asihpi/snd-asihpi.ko
asihpi/dsp6200.bin kernel/sound/pci/asihpi/snd-asihpi.ko
@@ -169,6 +321,7 @@ ath10k/QCA6174/hw3.0/firmware-5.bin kernel/drivers/net/wireless/ath/ath10k/ath10
ath10k/QCA6174/hw3.0/firmware-6.bin kernel/drivers/net/wireless/ath/ath10k/ath10k_pci.ko
ath10k/QCA9377/hw1.0/board.bin kernel/drivers/net/wireless/ath/ath10k/ath10k_pci.ko
ath10k/QCA9377/hw1.0/firmware-5.bin kernel/drivers/net/wireless/ath/ath10k/ath10k_pci.ko
ath10k/QCA9377/hw1.0/firmware-6.bin kernel/drivers/net/wireless/ath/ath10k/ath10k_pci.ko
ath10k/QCA9887/hw1.0/board-2.bin kernel/drivers/net/wireless/ath/ath10k/ath10k_pci.ko
ath10k/QCA9887/hw1.0/board.bin kernel/drivers/net/wireless/ath/ath10k/ath10k_pci.ko
ath10k/QCA9887/hw1.0/firmware-5.bin kernel/drivers/net/wireless/ath/ath10k/ath10k_pci.ko
@@ -267,6 +420,7 @@ bnx2x/bnx2x-e1h-7.13.1.0.fw kernel/drivers/net/ethernet/broadcom/bnx2x/bnx2x.ko
bnx2x/bnx2x-e2-7.13.1.0.fw kernel/drivers/net/ethernet/broadcom/bnx2x/bnx2x.ko
brcm/bcm43xx-0.fw kernel/drivers/net/wireless/broadcom/brcm80211/brcmsmac/brcmsmac.ko
brcm/bcm43xx_hdr-0.fw kernel/drivers/net/wireless/broadcom/brcm80211/brcmsmac/brcmsmac.ko
brcm/brcmfmac43012-sdio.bin kernel/drivers/net/wireless/broadcom/brcm80211/brcmfmac/brcmfmac.ko
brcm/brcmfmac43143.bin kernel/drivers/net/wireless/broadcom/brcm80211/brcmfmac/brcmfmac.ko
brcm/brcmfmac43143-sdio.bin kernel/drivers/net/wireless/broadcom/brcm80211/brcmfmac/brcmfmac.ko
brcm/brcmfmac43236b.bin kernel/drivers/net/wireless/broadcom/brcm80211/brcmfmac/brcmfmac.ko
@@ -339,6 +493,8 @@ cs46xx/cwcsnoop kernel/sound/pci/cs46xx/snd-cs46xx.ko
ct2fw-3.2.5.1.bin kernel/drivers/net/ethernet/brocade/bna/bna.ko
ct2fw-3.2.5.1.bin kernel/drivers/scsi/bfa/bfa.ko
ctefx.bin kernel/sound/pci/hda/snd-hda-codec-ca0132.ko
ctefx-desktop.bin kernel/sound/pci/hda/snd-hda-codec-ca0132.ko
ctefx-r3di.bin kernel/sound/pci/hda/snd-hda-codec-ca0132.ko
ctfw-3.2.5.1.bin kernel/drivers/net/ethernet/brocade/bna/bna.ko
ctfw-3.2.5.1.bin kernel/drivers/scsi/bfa/bfa.ko
cxgb3/ael2005_opt_edc.bin kernel/drivers/net/ethernet/chelsio/cxgb3/cxgb3.ko
@@ -492,14 +648,16 @@ i1480-usb-0.0.bin kernel/drivers/uwb/i1480/dfu/i1480-dfu-usb.ko
i2400m-fw-usb-1.5.sbcf kernel/drivers/net/wimax/i2400m/i2400m-usb.ko
i6050-fw-usb-1.5.sbcf kernel/drivers/net/wimax/i2400m/i2400m-usb.ko
i915/bxt_dmc_ver1_07.bin kernel/drivers/gpu/drm/i915/i915.ko
i915/bxt_guc_ver8_7.bin kernel/drivers/gpu/drm/i915/i915.ko
i915/bxt_guc_ver9_29.bin kernel/drivers/gpu/drm/i915/i915.ko
i915/bxt_huc_ver01_07_1398.bin kernel/drivers/gpu/drm/i915/i915.ko
i915/cnl_dmc_ver1_07.bin kernel/drivers/gpu/drm/i915/i915.ko
i915/glk_dmc_ver1_04.bin kernel/drivers/gpu/drm/i915/i915.ko
i915/kbl_dmc_ver1_01.bin kernel/drivers/gpu/drm/i915/i915.ko
i915/kbl_guc_ver9_14.bin kernel/drivers/gpu/drm/i915/i915.ko
i915/icl_dmc_ver1_07.bin kernel/drivers/gpu/drm/i915/i915.ko
i915/kbl_dmc_ver1_04.bin kernel/drivers/gpu/drm/i915/i915.ko
i915/kbl_guc_ver9_39.bin kernel/drivers/gpu/drm/i915/i915.ko
i915/kbl_huc_ver02_00_1810.bin kernel/drivers/gpu/drm/i915/i915.ko
i915/skl_dmc_ver1_26.bin kernel/drivers/gpu/drm/i915/i915.ko
i915/skl_guc_ver6_1.bin kernel/drivers/gpu/drm/i915/i915.ko
i915/skl_dmc_ver1_27.bin kernel/drivers/gpu/drm/i915/i915.ko
i915/skl_guc_ver9_33.bin kernel/drivers/gpu/drm/i915/i915.ko
i915/skl_huc_ver01_07_1398.bin kernel/drivers/gpu/drm/i915/i915.ko
intel/ibt-11-5.ddc kernel/drivers/bluetooth/btintel.ko
intel/ibt-11-5.sfi kernel/drivers/bluetooth/btintel.ko
@@ -545,18 +703,22 @@ iwlwifi-6050-5.ucode kernel/drivers/net/wireless/intel/iwlwifi/iwlwifi.ko
iwlwifi-7260-17.ucode kernel/drivers/net/wireless/intel/iwlwifi/iwlwifi.ko
iwlwifi-7265-17.ucode kernel/drivers/net/wireless/intel/iwlwifi/iwlwifi.ko
iwlwifi-7265D-29.ucode kernel/drivers/net/wireless/intel/iwlwifi/iwlwifi.ko
iwlwifi-8000C-34.ucode kernel/drivers/net/wireless/intel/iwlwifi/iwlwifi.ko
iwlwifi-8265-34.ucode kernel/drivers/net/wireless/intel/iwlwifi/iwlwifi.ko
iwlwifi-9000-pu-a0-jf-a0-34.ucode kernel/drivers/net/wireless/intel/iwlwifi/iwlwifi.ko
iwlwifi-9000-pu-a0-jf-b0-34.ucode kernel/drivers/net/wireless/intel/iwlwifi/iwlwifi.ko
iwlwifi-9000-pu-b0-jf-b0-34.ucode kernel/drivers/net/wireless/intel/iwlwifi/iwlwifi.ko
iwlwifi-9260-th-a0-jf-a0-34.ucode kernel/drivers/net/wireless/intel/iwlwifi/iwlwifi.ko
iwlwifi-9260-th-b0-jf-b0-34.ucode kernel/drivers/net/wireless/intel/iwlwifi/iwlwifi.ko
iwlwifi-Qu-a0-hr-a0-34.ucode kernel/drivers/net/wireless/intel/iwlwifi/iwlwifi.ko
iwlwifi-Qu-a0-jf-b0-34.ucode kernel/drivers/net/wireless/intel/iwlwifi/iwlwifi.ko
iwlwifi-QuQnj-a0-hr-a0-34.ucode kernel/drivers/net/wireless/intel/iwlwifi/iwlwifi.ko
iwlwifi-QuQnj-a0-jf-b0-34.ucode kernel/drivers/net/wireless/intel/iwlwifi/iwlwifi.ko
iwlwifi-QuQnj-f0-hr-a0-34.ucode kernel/drivers/net/wireless/intel/iwlwifi/iwlwifi.ko
iwlwifi-8000C-36.ucode kernel/drivers/net/wireless/intel/iwlwifi/iwlwifi.ko
iwlwifi-8265-36.ucode kernel/drivers/net/wireless/intel/iwlwifi/iwlwifi.ko
iwlwifi-9000-pu-a0-jf-a0-43.ucode kernel/drivers/net/wireless/intel/iwlwifi/iwlwifi.ko
iwlwifi-9000-pu-a0-jf-b0-43.ucode kernel/drivers/net/wireless/intel/iwlwifi/iwlwifi.ko
iwlwifi-9000-pu-b0-jf-b0-43.ucode kernel/drivers/net/wireless/intel/iwlwifi/iwlwifi.ko
iwlwifi-9260-th-a0-jf-a0-43.ucode kernel/drivers/net/wireless/intel/iwlwifi/iwlwifi.ko
iwlwifi-9260-th-b0-jf-b0-43.ucode kernel/drivers/net/wireless/intel/iwlwifi/iwlwifi.ko
iwlwifi-Qu-a0-hr-a0-43.ucode kernel/drivers/net/wireless/intel/iwlwifi/iwlwifi.ko
iwlwifi-Qu-a0-jf-b0-43.ucode kernel/drivers/net/wireless/intel/iwlwifi/iwlwifi.ko
iwlwifi-Qu-b0-hr-b0-43.ucode kernel/drivers/net/wireless/intel/iwlwifi/iwlwifi.ko
iwlwifi-Qu-b0-jf-b0-43.ucode kernel/drivers/net/wireless/intel/iwlwifi/iwlwifi.ko
iwlwifi-QuQnj-a0-hr-a0-43.ucode kernel/drivers/net/wireless/intel/iwlwifi/iwlwifi.ko
iwlwifi-QuQnj-a0-jf-b0-43.ucode kernel/drivers/net/wireless/intel/iwlwifi/iwlwifi.ko
iwlwifi-QuQnj-b0-hr-b0-43.ucode kernel/drivers/net/wireless/intel/iwlwifi/iwlwifi.ko
iwlwifi-QuQnj-f0-hr-a0-43.ucode kernel/drivers/net/wireless/intel/iwlwifi/iwlwifi.ko
iwlwifi-su-z0-43.ucode kernel/drivers/net/wireless/intel/iwlwifi/iwlwifi.ko
kaweth/new_code.bin kernel/drivers/net/usb/kaweth.ko
kaweth/new_code_fix.bin kernel/drivers/net/usb/kaweth.ko
kaweth/trigger_code.bin kernel/drivers/net/usb/kaweth.ko
@@ -577,6 +739,12 @@ keyspan/usa49w.fw kernel/drivers/usb/serial/keyspan.ko
keyspan/usa49wlc.fw kernel/drivers/usb/serial/keyspan.ko
korg/k1212.dsp kernel/sound/pci/korg1212/snd-korg1212.ko
ks7010sd.rom kernel/drivers/staging/ks7010/ks7010.ko
lantiq/xrx200_phy11g_a14.bin kernel/drivers/net/dsa/lantiq_gswip.ko
lantiq/xrx200_phy11g_a22.bin kernel/drivers/net/dsa/lantiq_gswip.ko
lantiq/xrx200_phy22f_a14.bin kernel/drivers/net/dsa/lantiq_gswip.ko
lantiq/xrx200_phy22f_a22.bin kernel/drivers/net/dsa/lantiq_gswip.ko
lantiq/xrx300_phy11g_a21.bin kernel/drivers/net/dsa/lantiq_gswip.ko
lantiq/xrx300_phy22f_a21.bin kernel/drivers/net/dsa/lantiq_gswip.ko
lattice-ecp3.bit kernel/drivers/misc/lattice-ecp3-config.ko
lbtf_usb.bin kernel/drivers/net/wireless/marvell/libertas_tf/libertas_tf_usb.ko
lgs8g75.fw kernel/drivers/media/dvb-frontends/lgs8gxx.ko
@@ -614,7 +782,12 @@ liquidio/lio_23xx_nic.bin kernel/drivers/net/ethernet/cavium/liquidio/liquidio.k
liquidio/lio_410nv_nic.bin kernel/drivers/net/ethernet/cavium/liquidio/liquidio.ko
me2600_firmware.bin kernel/drivers/staging/comedi/drivers/me_daq.ko
me4000_firmware.bin kernel/drivers/staging/comedi/drivers/me4000.ko
mellanox/mlxsw_spectrum-13.1530.152.mfa2 kernel/drivers/net/ethernet/mellanox/mlxsw/mlxsw_spectrum.ko
mediatek/mt7610e.bin kernel/drivers/net/wireless/mediatek/mt76/mt76x0/mt76x0e.ko
mediatek/mt7610e.bin kernel/drivers/net/wireless/mediatek/mt76/mt76x0/mt76x0u.ko
mediatek/mt7610u.bin kernel/drivers/net/wireless/mediatek/mt76/mt76x0/mt76x0u.ko
mediatek/mt7622pr2h.bin kernel/drivers/bluetooth/btmtkuart.ko
mediatek/mt7650e.bin kernel/drivers/net/wireless/mediatek/mt76/mt76x0/mt76x0e.ko
mellanox/mlxsw_spectrum-13.1910.622.mfa2 kernel/drivers/net/ethernet/mellanox/mlxsw/mlxsw_spectrum.ko
mixart/miXart8AES.xlx kernel/sound/pci/mixart/snd-mixart.ko
mixart/miXart8.elf kernel/sound/pci/mixart/snd-mixart.ko
mixart/miXart8.xlx kernel/sound/pci/mixart/snd-mixart.ko
@@ -641,6 +814,10 @@ mrvl/usb8797_uapsta.bin kernel/drivers/net/wireless/marvell/mwifiex/mwifiex_usb.
mrvl/usb8801_uapsta.bin kernel/drivers/net/wireless/marvell/mwifiex/mwifiex_usb.ko
mrvl/usbusb8997_combo_v4.bin kernel/drivers/net/wireless/marvell/mwifiex/mwifiex_usb.ko
mt7601u.bin kernel/drivers/net/wireless/mediatek/mt7601u/mt7601u.ko
mt7662.bin kernel/drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2e.ko
mt7662.bin kernel/drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2u.ko
mt7662_rom_patch.bin kernel/drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2e.ko
mt7662_rom_patch.bin kernel/drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2u.ko
mts_cdma.fw kernel/drivers/usb/serial/ti_usb_3410_5052.ko
mts_edge.fw kernel/drivers/usb/serial/ti_usb_3410_5052.ko
mts_gsm.fw kernel/drivers/usb/serial/ti_usb_3410_5052.ko
@@ -665,6 +842,7 @@ netronome/nic_AMDA0096-0001_2x10.nffw kernel/drivers/net/ethernet/netronome/nfp/
netronome/nic_AMDA0097-0001_2x40.nffw kernel/drivers/net/ethernet/netronome/nfp/nfp.ko
netronome/nic_AMDA0097-0001_4x10_1x40.nffw kernel/drivers/net/ethernet/netronome/nfp/nfp.ko
netronome/nic_AMDA0097-0001_8x10.nffw kernel/drivers/net/ethernet/netronome/nfp/nfp.ko
netronome/nic_AMDA0099-0001_1x10_1x25.nffw kernel/drivers/net/ethernet/netronome/nfp/nfp.ko
netronome/nic_AMDA0099-0001_2x10.nffw kernel/drivers/net/ethernet/netronome/nfp/nfp.ko
netronome/nic_AMDA0099-0001_2x25.nffw kernel/drivers/net/ethernet/netronome/nfp/nfp.ko
ni6534a.bin kernel/drivers/staging/comedi/drivers/ni_pcidio.ko
@@ -715,21 +893,6 @@ nvidia/gm206/gr/sw_bundle_init.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gm206/gr/sw_ctx.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gm206/gr/sw_method_init.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gm206/gr/sw_nonctx.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gm20b/acr/bl.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gm20b/acr/ucode_load.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gm20b/gr/fecs_bl.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gm20b/gr/fecs_data.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gm20b/gr/fecs_inst.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gm20b/gr/fecs_sig.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gm20b/gr/gpccs_data.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gm20b/gr/gpccs_inst.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gm20b/gr/sw_bundle_init.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gm20b/gr/sw_ctx.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gm20b/gr/sw_method_init.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gm20b/gr/sw_nonctx.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gm20b/pmu/desc.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gm20b/pmu/image.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gm20b/pmu/sig.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gp100/acr/bl.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gp100/acr/ucode_load.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gp100/acr/ucode_unload.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
@@ -762,8 +925,11 @@ nvidia/gp102/gr/sw_ctx.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gp102/gr/sw_method_init.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gp102/gr/sw_nonctx.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gp102/nvdec/scrubber.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gp102/sec2/desc-1.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gp102/sec2/desc.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gp102/sec2/image-1.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gp102/sec2/image.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gp102/sec2/sig-1.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gp102/sec2/sig.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gp104/acr/bl.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gp104/acr/ucode_load.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
@@ -782,8 +948,11 @@ nvidia/gp104/gr/sw_ctx.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gp104/gr/sw_method_init.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gp104/gr/sw_nonctx.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gp104/nvdec/scrubber.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gp104/sec2/desc-1.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gp104/sec2/desc.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gp104/sec2/image-1.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gp104/sec2/image.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gp104/sec2/sig-1.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gp104/sec2/sig.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gp106/acr/bl.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gp106/acr/ucode_load.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
@@ -802,8 +971,11 @@ nvidia/gp106/gr/sw_ctx.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gp106/gr/sw_method_init.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gp106/gr/sw_nonctx.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gp106/nvdec/scrubber.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gp106/sec2/desc-1.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gp106/sec2/desc.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gp106/sec2/image-1.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gp106/sec2/image.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gp106/sec2/sig-1.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gp106/sec2/sig.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gp107/acr/bl.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gp107/acr/ucode_load.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
@@ -822,26 +994,52 @@ nvidia/gp107/gr/sw_ctx.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gp107/gr/sw_method_init.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gp107/gr/sw_nonctx.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gp107/nvdec/scrubber.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gp107/sec2/desc-1.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gp107/sec2/desc.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gp107/sec2/image-1.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gp107/sec2/image.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gp107/sec2/sig-1.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gp107/sec2/sig.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gp10b/acr/bl.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gp10b/acr/ucode_load.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gp10b/gr/fecs_bl.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gp10b/gr/fecs_data.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gp10b/gr/fecs_inst.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gp10b/gr/fecs_sig.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gp10b/gr/gpccs_bl.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gp10b/gr/gpccs_data.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gp10b/gr/gpccs_inst.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gp10b/gr/gpccs_sig.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gp10b/gr/sw_bundle_init.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gp10b/gr/sw_ctx.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gp10b/gr/sw_method_init.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gp10b/gr/sw_nonctx.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gp10b/pmu/desc.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gp10b/pmu/image.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gp10b/pmu/sig.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gp108/acr/bl.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gp108/acr/ucode_load.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gp108/acr/ucode_unload.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gp108/acr/unload_bl.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gp108/gr/fecs_bl.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gp108/gr/fecs_data.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gp108/gr/fecs_inst.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gp108/gr/fecs_sig.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gp108/gr/gpccs_bl.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gp108/gr/gpccs_data.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gp108/gr/gpccs_inst.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gp108/gr/gpccs_sig.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gp108/gr/sw_bundle_init.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gp108/gr/sw_ctx.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gp108/gr/sw_method_init.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gp108/gr/sw_nonctx.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gp108/nvdec/scrubber.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gp108/sec2/desc.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gp108/sec2/image.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gp108/sec2/sig.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gv100/acr/bl.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gv100/acr/ucode_load.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gv100/acr/ucode_unload.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gv100/acr/unload_bl.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gv100/gr/fecs_bl.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gv100/gr/fecs_data.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gv100/gr/fecs_inst.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gv100/gr/fecs_sig.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gv100/gr/gpccs_bl.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gv100/gr/gpccs_data.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gv100/gr/gpccs_inst.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gv100/gr/gpccs_sig.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gv100/gr/sw_bundle_init.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gv100/gr/sw_ctx.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gv100/gr/sw_method_init.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gv100/gr/sw_nonctx.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gv100/nvdec/scrubber.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gv100/sec2/desc.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gv100/sec2/image.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
nvidia/gv100/sec2/sig.bin kernel/drivers/gpu/drm/nouveau/nouveau.ko
orinoco_ezusb_fw kernel/drivers/net/wireless/intersil/orinoco/orinoco_usb.ko
ositech/Xilinx7OD.bin kernel/drivers/net/ethernet/smsc/smc91c92_cs.ko
pca200e_ecd.bin2 kernel/drivers/atm/fore_200e.ko
@@ -868,7 +1066,8 @@ prism2_ru.fw kernel/drivers/staging/wlan-ng/prism2_usb.ko
prism_ap_fw.bin kernel/drivers/net/wireless/intersil/orinoco/orinoco.ko
prism_sta_fw.bin kernel/drivers/net/wireless/intersil/orinoco/orinoco.ko
qat_895xcc.bin kernel/drivers/crypto/qat/qat_dh895xcc/qat_dh895xcc.ko
qed/qed_init_values_zipped-8.20.0.0.bin kernel/drivers/net/ethernet/qlogic/qed/qed.ko
qat_895xcc_mmp.bin kernel/drivers/crypto/qat/qat_dh895xcc/qat_dh895xcc.ko
qed/qed_init_values_zipped-8.37.7.0.bin kernel/drivers/net/ethernet/qlogic/qed/qed.ko
ql2100_fw.bin kernel/drivers/scsi/qla2xxx/qla2xxx.ko
ql2200_fw.bin kernel/drivers/scsi/qla2xxx/qla2xxx.ko
ql2300_fw.bin kernel/drivers/scsi/qla2xxx/qla2xxx.ko
@@ -882,44 +1081,31 @@ qlogic/sd7220.fw kernel/drivers/infiniband/hw/qib/ib_qib.ko
radeon/ARUBA_me.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/ARUBA_pfp.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/ARUBA_rlc.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/banks_k_2_smc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/banks_k_2_smc.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/BARTS_mc.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/BARTS_me.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/BARTS_pfp.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/BARTS_smc.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/bonaire_ce.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/bonaire_ce.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/BONAIRE_ce.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/bonaire_k_smc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/bonaire_k_smc.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/BONAIRE_mc2.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/bonaire_mc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/bonaire_mc.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/BONAIRE_mc.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/bonaire_me.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/bonaire_me.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/BONAIRE_me.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/bonaire_mec.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/bonaire_mec.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/BONAIRE_mec.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/bonaire_pfp.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/bonaire_pfp.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/BONAIRE_pfp.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/bonaire_rlc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/bonaire_rlc.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/BONAIRE_rlc.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/bonaire_sdma1.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/bonaire_sdma.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/bonaire_sdma.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/BONAIRE_sdma.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/bonaire_smc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/bonaire_smc.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/BONAIRE_smc.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/bonaire_uvd.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/bonaire_uvd.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/BONAIRE_uvd.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/bonaire_vce.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/BONAIRE_vce.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/BTC_rlc.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/CAICOS_mc.bin kernel/drivers/gpu/drm/radeon/radeon.ko
@@ -940,167 +1126,107 @@ radeon/CYPRESS_pfp.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/CYPRESS_rlc.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/CYPRESS_smc.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/CYPRESS_uvd.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/hainan_ce.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/hainan_ce.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/HAINAN_ce.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/hainan_k_smc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/hainan_k_smc.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/HAINAN_mc2.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/hainan_mc.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/HAINAN_mc.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/hainan_me.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/hainan_me.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/HAINAN_me.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/hainan_pfp.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/hainan_pfp.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/HAINAN_pfp.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/hainan_rlc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/hainan_rlc.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/HAINAN_rlc.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/hainan_smc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/hainan_smc.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/HAINAN_smc.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/hawaii_ce.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/hawaii_ce.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/HAWAII_ce.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/hawaii_k_smc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/hawaii_k_smc.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/HAWAII_mc2.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/hawaii_mc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/hawaii_mc.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/HAWAII_mc.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/hawaii_me.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/hawaii_me.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/HAWAII_me.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/hawaii_mec.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/hawaii_mec.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/HAWAII_mec.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/hawaii_pfp.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/hawaii_pfp.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/HAWAII_pfp.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/hawaii_rlc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/hawaii_rlc.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/HAWAII_rlc.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/hawaii_sdma1.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/hawaii_sdma.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/hawaii_sdma.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/HAWAII_sdma.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/hawaii_smc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/hawaii_smc.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/HAWAII_smc.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/hawaii_uvd.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/hawaii_vce.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/JUNIPER_me.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/JUNIPER_pfp.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/JUNIPER_rlc.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/JUNIPER_smc.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/kabini_ce.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/kabini_ce.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/KABINI_ce.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/kabini_me.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/kabini_me.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/KABINI_me.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/kabini_mec.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/kabini_mec.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/KABINI_mec.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/kabini_pfp.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/kabini_pfp.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/KABINI_pfp.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/kabini_rlc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/kabini_rlc.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/KABINI_rlc.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/kabini_sdma1.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/kabini_sdma.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/kabini_sdma.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/KABINI_sdma.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/kabini_uvd.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/kabini_vce.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/kaveri_ce.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/kaveri_ce.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/KAVERI_ce.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/kaveri_me.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/kaveri_me.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/KAVERI_me.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/kaveri_mec2.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/kaveri_mec2.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/kaveri_mec.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/kaveri_mec.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/KAVERI_mec.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/kaveri_pfp.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/kaveri_pfp.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/KAVERI_pfp.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/kaveri_rlc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/kaveri_rlc.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/KAVERI_rlc.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/kaveri_sdma1.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/kaveri_sdma.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/kaveri_sdma.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/KAVERI_sdma.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/kaveri_uvd.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/kaveri_vce.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/mullins_ce.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/mullins_ce.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/MULLINS_ce.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/mullins_me.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/mullins_me.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/MULLINS_me.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/mullins_mec.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/mullins_mec.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/MULLINS_mec.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/mullins_pfp.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/mullins_pfp.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/MULLINS_pfp.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/mullins_rlc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/mullins_rlc.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/MULLINS_rlc.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/mullins_sdma1.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/mullins_sdma.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/mullins_sdma.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/MULLINS_sdma.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/mullins_uvd.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/mullins_vce.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/oland_ce.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/oland_ce.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/OLAND_ce.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/oland_k_smc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/oland_k_smc.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/OLAND_mc2.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/oland_mc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/oland_mc.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/OLAND_mc.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/oland_me.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/oland_me.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/OLAND_me.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/oland_pfp.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/oland_pfp.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/OLAND_pfp.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/oland_rlc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/oland_rlc.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/OLAND_rlc.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/oland_smc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/oland_smc.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/OLAND_smc.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/PALM_me.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/PALM_pfp.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/pitcairn_ce.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/pitcairn_ce.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/PITCAIRN_ce.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/pitcairn_k_smc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/pitcairn_k_smc.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/PITCAIRN_mc2.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/pitcairn_mc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/pitcairn_mc.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/PITCAIRN_mc.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/pitcairn_me.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/pitcairn_me.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/PITCAIRN_me.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/pitcairn_pfp.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/pitcairn_pfp.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/PITCAIRN_pfp.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/pitcairn_rlc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/pitcairn_rlc.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/PITCAIRN_rlc.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/pitcairn_smc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/pitcairn_smc.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/PITCAIRN_smc.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/R100_cp.bin kernel/drivers/gpu/drm/radeon/radeon.ko
@@ -1144,7 +1270,6 @@ radeon/RV770_me.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/RV770_pfp.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/RV770_smc.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/RV770_uvd.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/si58_mc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/si58_mc.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/SUMO2_me.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/SUMO2_pfp.bin kernel/drivers/gpu/drm/radeon/radeon.ko
@@ -1152,23 +1277,17 @@ radeon/SUMO_me.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/SUMO_pfp.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/SUMO_rlc.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/SUMO_uvd.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/tahiti_ce.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/tahiti_ce.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/TAHITI_ce.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/TAHITI_mc2.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/tahiti_mc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/tahiti_mc.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/TAHITI_mc.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/tahiti_me.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/tahiti_me.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/TAHITI_me.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/tahiti_pfp.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/tahiti_pfp.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/TAHITI_pfp.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/tahiti_rlc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/tahiti_rlc.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/TAHITI_rlc.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/tahiti_smc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/tahiti_smc.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/TAHITI_smc.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/TAHITI_uvd.bin kernel/drivers/gpu/drm/radeon/radeon.ko
@@ -1177,25 +1296,18 @@ radeon/TURKS_mc.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/TURKS_me.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/TURKS_pfp.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/TURKS_smc.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/verde_ce.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/verde_ce.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/VERDE_ce.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/verde_k_smc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/verde_k_smc.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/VERDE_mc2.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/verde_mc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/verde_mc.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/VERDE_mc.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/verde_me.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/verde_me.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/VERDE_me.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/verde_pfp.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/verde_pfp.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/VERDE_pfp.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/verde_rlc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/verde_rlc.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/VERDE_rlc.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/verde_smc.bin kernel/drivers/gpu/drm/amd/amdgpu/amdgpu.ko
radeon/verde_smc.bin kernel/drivers/gpu/drm/radeon/radeon.ko
radeon/VERDE_smc.bin kernel/drivers/gpu/drm/radeon/radeon.ko
riptide.hex kernel/sound/pci/riptide/snd-riptide.ko
@@ -1215,6 +1327,19 @@ RTL8192E/main.img kernel/drivers/staging/rtl8192e/rtl8192e/r8192e_pci.ko
RTL8192U/boot.img kernel/drivers/staging/rtl8192u/r8192u_usb.ko
RTL8192U/data.img kernel/drivers/staging/rtl8192u/r8192u_usb.ko
RTL8192U/main.img kernel/drivers/staging/rtl8192u/r8192u_usb.ko
rtl_bt/rtl8723a_fw.bin kernel/drivers/bluetooth/btrtl.ko
rtl_bt/rtl8723b_config.bin kernel/drivers/bluetooth/btrtl.ko
rtl_bt/rtl8723b_fw.bin kernel/drivers/bluetooth/btrtl.ko
rtl_bt/rtl8723bs_config.bin kernel/drivers/bluetooth/btrtl.ko
rtl_bt/rtl8723bs_fw.bin kernel/drivers/bluetooth/btrtl.ko
rtl_bt/rtl8723ds_config.bin kernel/drivers/bluetooth/btrtl.ko
rtl_bt/rtl8723ds_fw.bin kernel/drivers/bluetooth/btrtl.ko
rtl_bt/rtl8761a_config.bin kernel/drivers/bluetooth/btrtl.ko
rtl_bt/rtl8761a_fw.bin kernel/drivers/bluetooth/btrtl.ko
rtl_bt/rtl8821a_config.bin kernel/drivers/bluetooth/btrtl.ko
rtl_bt/rtl8821a_fw.bin kernel/drivers/bluetooth/btrtl.ko
rtl_bt/rtl8822b_config.bin kernel/drivers/bluetooth/btrtl.ko
rtl_bt/rtl8822b_fw.bin kernel/drivers/bluetooth/btrtl.ko
rtl_nic/rtl8105e-1.fw kernel/drivers/net/ethernet/realtek/r8169.ko
rtl_nic/rtl8106e-1.fw kernel/drivers/net/ethernet/realtek/r8169.ko
rtl_nic/rtl8106e-2.fw kernel/drivers/net/ethernet/realtek/r8169.ko
@@ -1261,6 +1386,8 @@ rtlwifi/rtl8723efw.bin kernel/drivers/net/wireless/realtek/rtlwifi/rtl8723ae/rtl
rtlwifi/rtl8821aefw_29.bin kernel/drivers/net/wireless/realtek/rtlwifi/rtl8821ae/rtl8821ae.ko
rtlwifi/rtl8821aefw.bin kernel/drivers/net/wireless/realtek/rtlwifi/rtl8821ae/rtl8821ae.ko
rtlwifi/rtl8822befw.bin kernel/drivers/staging/rtlwifi/r8822be.ko
rtw88/rtw8822b_fw.bin kernel/drivers/net/wireless/realtek/rtw88/rtw88.ko
rtw88/rtw8822c_fw.bin kernel/drivers/net/wireless/realtek/rtw88/rtw88.ko
sd8385.bin kernel/drivers/net/wireless/marvell/libertas/libertas_sdio.ko
sd8385_helper.bin kernel/drivers/net/wireless/marvell/libertas/libertas_sdio.ko
sd8686.bin kernel/drivers/net/wireless/marvell/libertas/libertas_sdio.ko
@@ -1375,6 +1502,8 @@ whiteheat_loader.fw kernel/drivers/usb/serial/whiteheat.ko
wil6210.brd kernel/drivers/net/wireless/ath/wil6210/wil6210.ko
wil6210.fw kernel/drivers/net/wireless/ath/wil6210/wil6210.ko
wil6210_sparrow_plus.fw kernel/drivers/net/wireless/ath/wil6210/wil6210.ko
wil6436.brd kernel/drivers/net/wireless/ath/wil6210/wil6210.ko
wil6436.fw kernel/drivers/net/wireless/ath/wil6210/wil6210.ko
wlan/prima/WCNSS_qcom_wlan_nv.bin kernel/drivers/net/wireless/ath/wcn36xx/wcn36xx.ko
xc3028L-v36.fw kernel/drivers/media/tuners/tuner-xc2028.ko
xc3028-v27.fw kernel/drivers/media/pci/cx18/cx18.ko
Binary file not shown.
@@ -1,37 +0,0 @@
diff --git a/src/netdev.c b/src/netdev.c
index 73b0f9a..aef1bc2 100644
--- a/src/netdev.c
+++ b/src/netdev.c
@@ -6724,19 +6724,12 @@ static int e1000_change_mtu(struct net_device *netdev, int new_mtu)
int max_frame = new_mtu + VLAN_ETH_HLEN + ETH_FCS_LEN;
/* Jumbo frame support */
- if ((max_frame > (VLAN_ETH_FRAME_LEN + ETH_FCS_LEN)) &&
+ if ((new_mtu > ETH_DATA_LEN) &&
!(adapter->flags & FLAG_HAS_JUMBO_FRAMES)) {
e_err("Jumbo Frames not supported.\n");
return -EINVAL;
}
- /* Supported frame sizes */
- if ((new_mtu < (VLAN_ETH_ZLEN + ETH_FCS_LEN)) ||
- (max_frame > adapter->max_hw_frame_size)) {
- e_err("Unsupported MTU setting\n");
- return -EINVAL;
- }
-
/* Jumbo frame workaround on 82579 and newer requires CRC be stripped */
if ((adapter->hw.mac.type >= e1000_pch2lan) &&
!(adapter->flags2 & FLAG2_CRC_STRIPPING) &&
@@ -8262,6 +8255,11 @@ static int e1000_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
#endif /* HAVE_NETDEV_VLAN_FEATURES */
}
+ /* MTU range: 68 - max_hw_frame_size */
+ netdev->min_mtu = ETH_MIN_MTU;
+ netdev->max_mtu = adapter->max_hw_frame_size -
+ (VLAN_ETH_HLEN + ETH_FCS_LEN);
+
if (e1000e_enable_mng_pass_thru(&adapter->hw))
adapter->flags |= FLAG_MNG_PT_ENABLED;
@@ -1,53 +0,0 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Thomas Lamprecht <t.lamprecht@proxmox.com>
Date: Tue, 5 Jun 2018 11:16:29 +0200
Subject: [PATCH] port to new internal kernel timer API
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
---
diff --git a/src/netdev.c b/src/netdev.c
--- a/src/netdev.c
+++ b/src/netdev.c
@@ -5389,9 +5389,10 @@
* Need to wait a few seconds after link up to get diagnostic information from
* the phy
**/
-static void e1000_update_phy_info(unsigned long data)
+static void e1000_update_phy_info(struct timer_list *t)
{
- struct e1000_adapter *adapter = (struct e1000_adapter *)data;
+ struct e1000_adapter *adapter;
+ adapter = from_timer(adapter, t, phy_info_timer);
if (test_bit(__E1000_DOWN, &adapter->state))
return;
@@ -5774,9 +5775,10 @@
* e1000_watchdog - Timer Call-back
* @data: pointer to adapter cast into an unsigned long
**/
-static void e1000_watchdog(unsigned long data)
+static void e1000_watchdog(struct timer_list *t)
{
- struct e1000_adapter *adapter = (struct e1000_adapter *)data;
+ struct e1000_adapter *adapter;
+ adapter = from_timer(adapter, t, watchdog_timer);
/* Do the rest outside of interrupt context */
schedule_work(&adapter->watchdog_task);
@@ -8348,13 +8348,9 @@
goto err_eeprom;
}
- init_timer(&adapter->watchdog_timer);
- adapter->watchdog_timer.function = e1000_watchdog;
- adapter->watchdog_timer.data = (unsigned long)adapter;
-
- init_timer(&adapter->phy_info_timer);
- adapter->phy_info_timer.function = e1000_update_phy_info;
- adapter->phy_info_timer.data = (unsigned long)adapter;
+ timer_setup(&adapter->watchdog_timer, e1000_watchdog, 0);
+
+ timer_setup(&adapter->phy_info_timer, e1000_update_phy_info, 0);
INIT_WORK(&adapter->reset_task, e1000_reset_task);
INIT_WORK(&adapter->watchdog_task, e1000_watchdog_task);
-15
View File
@@ -1,15 +0,0 @@
diff --git a/src/igb_main.c.orig b/src/igb_main.c
index 3ee1ec7..c8adf04 100644
--- a/src/igb_main.c.orig
+++ b/src/igb_main.c
@@ -5888,10 +5888,8 @@ static int igb_change_mtu(struct net_dev
while (test_and_set_bit(__IGB_RESETTING, &adapter->state))
usleep_range(1000, 2000);
-#ifndef HAVE_NETDEVICE_MIN_MAX_MTU
/* igb_down has a dependency on max_frame_size */
adapter->max_frame_size = max_frame;
-#endif
if (netif_running(netdev))
igb_down(adapter);
@@ -1,18 +0,0 @@
diff --git a/src/Makefile.orig b/src/Makefile
index 8e962f7..50bcdcc 100644
--- a/src/Makefile.orig
+++ b/src/Makefile
@@ -123,6 +123,13 @@ ifeq (,$(CC))
$(error Compiler not found)
endif
+# workaround for GCC6's default PIE
+ifeq ($(CC),gcc)
+ PIE_TEST = [ -z "`$(CC) -fno-PIE -no-pie -x c -c /dev/null -o /dev/null 2>&1`" ]
+ PIE_FLAGS := $(shell $(PIE_TEST) && echo '-fno-PIE -no-pie')
+ EXTRA_CFLAGS += $(PIE_FLAGS)
+endif
+
# we need to know what platform the driver is being built on
# some additional features are only built on Intel platforms
ARCH := $(shell uname -m | sed 's/i.86/i386/')
@@ -51,14 +51,14 @@ Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
---
.../admin-guide/kernel-parameters.txt | 9 ++
drivers/pci/quirks.c | 101 ++++++++++++++++++
2 files changed, 110 insertions(+)
drivers/pci/quirks.c | 102 ++++++++++++++++++
2 files changed, 111 insertions(+)
diff --git a/Documentation/admin-guide/kernel-parameters.txt b/Documentation/admin-guide/kernel-parameters.txt
index 325a5dd7813d..a95cc0b61b29 100644
index 988d3f3ad29d..cd1a1bddb997 100644
--- a/Documentation/admin-guide/kernel-parameters.txt
+++ b/Documentation/admin-guide/kernel-parameters.txt
@@ -3181,6 +3181,15 @@
@@ -3312,6 +3312,15 @@
Also, it enforces the PCI Local Bus spec
rule that those bits should be 0 in system reset
events (useful for kexec/kdump cases).
@@ -75,11 +75,11 @@ index 325a5dd7813d..a95cc0b61b29 100644
Safety option to keep boot IRQs enabled. This
should never be necessary.
diff --git a/drivers/pci/quirks.c b/drivers/pci/quirks.c
index e5d1a00c481d..7ecd84506d8d 100644
index e2479ccedc91..4981d0ec7960 100644
--- a/drivers/pci/quirks.c
+++ b/drivers/pci/quirks.c
@@ -3769,6 +3769,106 @@ static int __init pci_apply_final_quirks(void)
@@ -194,6 +194,106 @@ static int __init pci_apply_final_quirks(void)
}
fs_initcall_sync(pci_apply_final_quirks);
+static bool acs_on_downstream;
@@ -183,13 +183,14 @@ index e5d1a00c481d..7ecd84506d8d 100644
+}
+
/*
* Following are device-specific reset methods which can be used to
* reset a single function if other methods (e.g. FLR, PM D0->D3) are
@@ -4664,6 +4764,7 @@ static const struct pci_dev_acs_enabled {
* Decoding should be disabled for a PCI device during BAR sizing to avoid
* conflict. But doing so may cause problems on host bridge and perhaps other
@@ -4564,6 +4664,8 @@ static const struct pci_dev_acs_enabled {
{ PCI_VENDOR_ID_CAVIUM, PCI_ANY_ID, pci_quirk_cavium_acs },
/* APM X-Gene */
{ PCI_VENDOR_ID_AMCC, 0xE004, pci_quirk_xgene_acs },
+ /* Enable overrides for missing ACS capabilities */
+ { PCI_ANY_ID, PCI_ANY_ID, pcie_acs_overrides },
{ 0 }
};
/* Ampere Computing */
{ PCI_VENDOR_ID_AMPERE, 0xE005, pci_quirk_xgene_acs },
{ PCI_VENDOR_ID_AMPERE, 0xE006, pci_quirk_xgene_acs },
@@ -13,7 +13,7 @@ Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/virt/kvm/kvm_main.c b/virt/kvm/kvm_main.c
index 706b13f0c698..c6749d154ebc 100644
index 6f50cf5b9ef5..a3d541f23204 100644
--- a/virt/kvm/kvm_main.c
+++ b/virt/kvm/kvm_main.c
@@ -78,7 +78,7 @@ module_param(halt_poll_ns, uint, 0644);
@@ -0,0 +1,32 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Thomas Lamprecht <t.lamprecht@proxmox.com>
Date: Fri, 7 Jun 2019 21:16:42 +0200
Subject: [PATCH] Revert "KVM: VMX: enable nested virtualization by default"
This reverts commit 1e58e5e59148916fa43444a406335a990783fb78
As we're not yet there, and this effectively breaks live migration
for all VMs using host or +vmx which did not manually enabled nesting
Those which already enabled nesting manually have already breakage,
but that was something to expect. The situation will get better in
the future (probably post qemu 4.1).
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
---
arch/x86/kvm/vmx/vmx.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/x86/kvm/vmx/vmx.c b/arch/x86/kvm/vmx/vmx.c
index 2bb8fa904b9f..835edf9b2954 100644
--- a/arch/x86/kvm/vmx/vmx.c
+++ b/arch/x86/kvm/vmx/vmx.c
@@ -106,7 +106,7 @@ module_param(enable_apicv, bool, S_IRUGO);
* VMX and be a hypervisor for its own guests. If nested=0, guests may not
* use VMX instructions.
*/
-static bool __read_mostly nested = 1;
+static bool __read_mostly nested = 0;
module_param(nested, bool, S_IRUGO);
static u64 __read_mostly host_xss;
@@ -1,59 +0,0 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Changwei Ge <ge.changwei@h3c.com>
Date: Wed, 31 Jan 2018 16:15:02 -0800
Subject: [PATCH] ocfs2: make metadata estimation accurate and clear
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Current code assume that ::w_unwritten_list always has only one item on.
This is not right and hard to get understood. So improve how to count
unwritten item.
Link: http://lkml.kernel.org/r/1515479070-32653-1-git-send-email-ge.changwei@h3c.com
Signed-off-by: Changwei Ge <ge.changwei@h3c.com>
Reported-by: John Lightsey <john@nixnuts.net>
Tested-by: John Lightsey <john@nixnuts.net>
Cc: Mark Fasheh <mfasheh@versity.com>
Cc: Joseph Qi <jiangqi903@gmail.com>
Cc: Junxiao Bi <junxiao.bi@oracle.com>
Cc: Joel Becker <jlbec@evilplan.org>
Cc: Changwei Ge <ge.changwei@h3c.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
(cherry picked from commit 63de8bd9328bf2a778fc277503da163ae3defa3c)
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
---
fs/ocfs2/aops.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/fs/ocfs2/aops.c b/fs/ocfs2/aops.c
index 7de0c9562b70..209cec7efef4 100644
--- a/fs/ocfs2/aops.c
+++ b/fs/ocfs2/aops.c
@@ -797,6 +797,7 @@ struct ocfs2_write_ctxt {
struct ocfs2_cached_dealloc_ctxt w_dealloc;
struct list_head w_unwritten_list;
+ unsigned int w_unwritten_count;
};
void ocfs2_unlock_and_free_pages(struct page **pages, int num_pages)
@@ -1386,6 +1387,7 @@ static int ocfs2_unwritten_check(struct inode *inode,
desc->c_clear_unwritten = 0;
list_add_tail(&new->ue_ip_node, &oi->ip_unwritten_list);
list_add_tail(&new->ue_node, &wc->w_unwritten_list);
+ wc->w_unwritten_count++;
new = NULL;
unlock:
spin_unlock(&oi->ip_lock);
@@ -2277,7 +2279,7 @@ static int ocfs2_dio_wr_get_block(struct inode *inode, sector_t iblock,
ue->ue_phys = desc->c_phys;
list_splice_tail_init(&wc->w_unwritten_list, &dwc->dw_zero_list);
- dwc->dw_zero_count++;
+ dwc->dw_zero_count += wc->w_unwritten_count;
}
ret = ocfs2_write_end_nolock(inode->i_mapping, pos, len, len, wc);
@@ -1,368 +0,0 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Changwei Ge <ge.changwei@h3c.com>
Date: Wed, 31 Jan 2018 16:15:06 -0800
Subject: [PATCH] ocfs2: try to reuse extent block in dealloc without
meta_alloc
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
A crash issue was reported by John Lightsey with a call trace as follows:
ocfs2_split_extent+0x1ad3/0x1b40 [ocfs2]
ocfs2_change_extent_flag+0x33a/0x470 [ocfs2]
ocfs2_mark_extent_written+0x172/0x220 [ocfs2]
ocfs2_dio_end_io+0x62d/0x910 [ocfs2]
dio_complete+0x19a/0x1a0
do_blockdev_direct_IO+0x19dd/0x1eb0
__blockdev_direct_IO+0x43/0x50
ocfs2_direct_IO+0x8f/0xa0 [ocfs2]
generic_file_direct_write+0xb2/0x170
__generic_file_write_iter+0xc3/0x1b0
ocfs2_file_write_iter+0x4bb/0xca0 [ocfs2]
__vfs_write+0xae/0xf0
vfs_write+0xb8/0x1b0
SyS_write+0x4f/0xb0
system_call_fastpath+0x16/0x75
The BUG code told that extent tree wants to grow but no metadata was
reserved ahead of time. From my investigation into this issue, the root
cause it that although enough metadata is not reserved, there should be
enough for following use. Rightmost extent is merged into its left one
due to a certain times of marking extent written. Because during
marking extent written, we got many physically continuous extents. At
last, an empty extent showed up and the rightmost path is removed from
extent tree.
Add a new mechanism to reuse extent block cached in dealloc which were
just unlinked from extent tree to solve this crash issue.
Criteria is that during marking extents *written*, if extent rotation
and merging results in unlinking extent with growing extent tree later
without any metadata reserved ahead of time, try to reuse those extents
in dealloc in which deleted extents are cached.
Also, this patch addresses the issue John reported that ::dw_zero_count
is not calculated properly.
After applying this patch, the issue John reported was gone. Thanks for
the reproducer provided by John. And this patch has passed
ocfs2-test(29 cases) suite running by New H3C Group.
[ge.changwei@h3c.com: fix static checker warnning]
Link: http://lkml.kernel.org/r/63ADC13FD55D6546B7DECE290D39E373F29196AE@H3CMLB12-EX.srv.huawei-3com.com
[akpm@linux-foundation.org: brelse(NULL) is legal]
Link: http://lkml.kernel.org/r/1515479070-32653-2-git-send-email-ge.changwei@h3c.com
Signed-off-by: Changwei Ge <ge.changwei@h3c.com>
Reported-by: John Lightsey <john@nixnuts.net>
Tested-by: John Lightsey <john@nixnuts.net>
Cc: Joel Becker <jlbec@evilplan.org>
Cc: Joseph Qi <jiangqi903@gmail.com>
Cc: Junxiao Bi <junxiao.bi@oracle.com>
Cc: Dan Carpenter <dan.carpenter@oracle.com>
Cc: Mark Fasheh <mfasheh@versity.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
(cherry picked from commit 71a36944042b7d9dd71f6a5d1c5ea1c2353b5d42)
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
---
fs/ocfs2/alloc.c | 206 ++++++++++++++++++++++++++++++++++++++++++++---
fs/ocfs2/alloc.h | 1 +
fs/ocfs2/aops.c | 6 ++
3 files changed, 203 insertions(+), 10 deletions(-)
diff --git a/fs/ocfs2/alloc.c b/fs/ocfs2/alloc.c
index 6b177de324c0..3760888f2e76 100644
--- a/fs/ocfs2/alloc.c
+++ b/fs/ocfs2/alloc.c
@@ -165,6 +165,13 @@ static int ocfs2_dinode_insert_check(struct ocfs2_extent_tree *et,
struct ocfs2_extent_rec *rec);
static int ocfs2_dinode_sanity_check(struct ocfs2_extent_tree *et);
static void ocfs2_dinode_fill_root_el(struct ocfs2_extent_tree *et);
+
+static int ocfs2_reuse_blk_from_dealloc(handle_t *handle,
+ struct ocfs2_extent_tree *et,
+ struct buffer_head **new_eb_bh,
+ int blk_wanted, int *blk_given);
+static int ocfs2_is_dealloc_empty(struct ocfs2_extent_tree *et);
+
static const struct ocfs2_extent_tree_operations ocfs2_dinode_et_ops = {
.eo_set_last_eb_blk = ocfs2_dinode_set_last_eb_blk,
.eo_get_last_eb_blk = ocfs2_dinode_get_last_eb_blk,
@@ -448,6 +455,7 @@ static void __ocfs2_init_extent_tree(struct ocfs2_extent_tree *et,
if (!obj)
obj = (void *)bh->b_data;
et->et_object = obj;
+ et->et_dealloc = NULL;
et->et_ops->eo_fill_root_el(et);
if (!et->et_ops->eo_fill_max_leaf_clusters)
@@ -1158,7 +1166,7 @@ static int ocfs2_add_branch(handle_t *handle,
struct buffer_head **last_eb_bh,
struct ocfs2_alloc_context *meta_ac)
{
- int status, new_blocks, i;
+ int status, new_blocks, i, block_given = 0;
u64 next_blkno, new_last_eb_blk;
struct buffer_head *bh;
struct buffer_head **new_eb_bhs = NULL;
@@ -1213,11 +1221,31 @@ static int ocfs2_add_branch(handle_t *handle,
goto bail;
}
- status = ocfs2_create_new_meta_bhs(handle, et, new_blocks,
- meta_ac, new_eb_bhs);
- if (status < 0) {
- mlog_errno(status);
- goto bail;
+ /* Firstyly, try to reuse dealloc since we have already estimated how
+ * many extent blocks we may use.
+ */
+ if (!ocfs2_is_dealloc_empty(et)) {
+ status = ocfs2_reuse_blk_from_dealloc(handle, et,
+ new_eb_bhs, new_blocks,
+ &block_given);
+ if (status < 0) {
+ mlog_errno(status);
+ goto bail;
+ }
+ }
+
+ BUG_ON(block_given > new_blocks);
+
+ if (block_given < new_blocks) {
+ BUG_ON(!meta_ac);
+ status = ocfs2_create_new_meta_bhs(handle, et,
+ new_blocks - block_given,
+ meta_ac,
+ &new_eb_bhs[block_given]);
+ if (status < 0) {
+ mlog_errno(status);
+ goto bail;
+ }
}
/* Note: new_eb_bhs[new_blocks - 1] is the guy which will be
@@ -1340,15 +1368,25 @@ static int ocfs2_shift_tree_depth(handle_t *handle,
struct ocfs2_alloc_context *meta_ac,
struct buffer_head **ret_new_eb_bh)
{
- int status, i;
+ int status, i, block_given = 0;
u32 new_clusters;
struct buffer_head *new_eb_bh = NULL;
struct ocfs2_extent_block *eb;
struct ocfs2_extent_list *root_el;
struct ocfs2_extent_list *eb_el;
- status = ocfs2_create_new_meta_bhs(handle, et, 1, meta_ac,
- &new_eb_bh);
+ if (!ocfs2_is_dealloc_empty(et)) {
+ status = ocfs2_reuse_blk_from_dealloc(handle, et,
+ &new_eb_bh, 1,
+ &block_given);
+ } else if (meta_ac) {
+ status = ocfs2_create_new_meta_bhs(handle, et, 1, meta_ac,
+ &new_eb_bh);
+
+ } else {
+ BUG();
+ }
+
if (status < 0) {
mlog_errno(status);
goto bail;
@@ -1511,7 +1549,7 @@ static int ocfs2_grow_tree(handle_t *handle, struct ocfs2_extent_tree *et,
int depth = le16_to_cpu(el->l_tree_depth);
struct buffer_head *bh = NULL;
- BUG_ON(meta_ac == NULL);
+ BUG_ON(meta_ac == NULL && ocfs2_is_dealloc_empty(et));
shift = ocfs2_find_branch_target(et, &bh);
if (shift < 0) {
@@ -6585,6 +6623,154 @@ ocfs2_find_per_slot_free_list(int type,
return fl;
}
+static struct ocfs2_per_slot_free_list *
+ocfs2_find_preferred_free_list(int type,
+ int preferred_slot,
+ int *real_slot,
+ struct ocfs2_cached_dealloc_ctxt *ctxt)
+{
+ struct ocfs2_per_slot_free_list *fl = ctxt->c_first_suballocator;
+
+ while (fl) {
+ if (fl->f_inode_type == type && fl->f_slot == preferred_slot) {
+ *real_slot = fl->f_slot;
+ return fl;
+ }
+
+ fl = fl->f_next_suballocator;
+ }
+
+ /* If we can't find any free list matching preferred slot, just use
+ * the first one.
+ */
+ fl = ctxt->c_first_suballocator;
+ *real_slot = fl->f_slot;
+
+ return fl;
+}
+
+/* Return Value 1 indicates empty */
+static int ocfs2_is_dealloc_empty(struct ocfs2_extent_tree *et)
+{
+ struct ocfs2_per_slot_free_list *fl = NULL;
+
+ if (!et->et_dealloc)
+ return 1;
+
+ fl = et->et_dealloc->c_first_suballocator;
+ if (!fl)
+ return 1;
+
+ if (!fl->f_first)
+ return 1;
+
+ return 0;
+}
+
+/* If extent was deleted from tree due to extent rotation and merging, and
+ * no metadata is reserved ahead of time. Try to reuse some extents
+ * just deleted. This is only used to reuse extent blocks.
+ * It is supposed to find enough extent blocks in dealloc if our estimation
+ * on metadata is accurate.
+ */
+static int ocfs2_reuse_blk_from_dealloc(handle_t *handle,
+ struct ocfs2_extent_tree *et,
+ struct buffer_head **new_eb_bh,
+ int blk_wanted, int *blk_given)
+{
+ int i, status = 0, real_slot;
+ struct ocfs2_cached_dealloc_ctxt *dealloc;
+ struct ocfs2_per_slot_free_list *fl;
+ struct ocfs2_cached_block_free *bf;
+ struct ocfs2_extent_block *eb;
+ struct ocfs2_super *osb =
+ OCFS2_SB(ocfs2_metadata_cache_get_super(et->et_ci));
+
+ *blk_given = 0;
+
+ /* If extent tree doesn't have a dealloc, this is not faulty. Just
+ * tell upper caller dealloc can't provide any block and it should
+ * ask for alloc to claim more space.
+ */
+ dealloc = et->et_dealloc;
+ if (!dealloc)
+ goto bail;
+
+ for (i = 0; i < blk_wanted; i++) {
+ /* Prefer to use local slot */
+ fl = ocfs2_find_preferred_free_list(EXTENT_ALLOC_SYSTEM_INODE,
+ osb->slot_num, &real_slot,
+ dealloc);
+ /* If no more block can be reused, we should claim more
+ * from alloc. Just return here normally.
+ */
+ if (!fl) {
+ status = 0;
+ break;
+ }
+
+ bf = fl->f_first;
+ fl->f_first = bf->free_next;
+
+ new_eb_bh[i] = sb_getblk(osb->sb, bf->free_blk);
+ if (new_eb_bh[i] == NULL) {
+ status = -ENOMEM;
+ mlog_errno(status);
+ goto bail;
+ }
+
+ mlog(0, "Reusing block(%llu) from "
+ "dealloc(local slot:%d, real slot:%d)\n",
+ bf->free_blk, osb->slot_num, real_slot);
+
+ ocfs2_set_new_buffer_uptodate(et->et_ci, new_eb_bh[i]);
+
+ status = ocfs2_journal_access_eb(handle, et->et_ci,
+ new_eb_bh[i],
+ OCFS2_JOURNAL_ACCESS_CREATE);
+ if (status < 0) {
+ mlog_errno(status);
+ goto bail;
+ }
+
+ memset(new_eb_bh[i]->b_data, 0, osb->sb->s_blocksize);
+ eb = (struct ocfs2_extent_block *) new_eb_bh[i]->b_data;
+
+ /* We can't guarantee that buffer head is still cached, so
+ * polutlate the extent block again.
+ */
+ strcpy(eb->h_signature, OCFS2_EXTENT_BLOCK_SIGNATURE);
+ eb->h_blkno = cpu_to_le64(bf->free_blk);
+ eb->h_fs_generation = cpu_to_le32(osb->fs_generation);
+ eb->h_suballoc_slot = cpu_to_le16(real_slot);
+ eb->h_suballoc_loc = cpu_to_le64(bf->free_bg);
+ eb->h_suballoc_bit = cpu_to_le16(bf->free_bit);
+ eb->h_list.l_count =
+ cpu_to_le16(ocfs2_extent_recs_per_eb(osb->sb));
+
+ /* We'll also be dirtied by the caller, so
+ * this isn't absolutely necessary.
+ */
+ ocfs2_journal_dirty(handle, new_eb_bh[i]);
+
+ if (!fl->f_first) {
+ dealloc->c_first_suballocator = fl->f_next_suballocator;
+ kfree(fl);
+ }
+ kfree(bf);
+ }
+
+ *blk_given = i;
+
+bail:
+ if (unlikely(status < 0)) {
+ for (i = 0; i < blk_wanted; i++)
+ brelse(new_eb_bh[i]);
+ }
+
+ return status;
+}
+
int ocfs2_cache_block_dealloc(struct ocfs2_cached_dealloc_ctxt *ctxt,
int type, int slot, u64 suballoc,
u64 blkno, unsigned int bit)
diff --git a/fs/ocfs2/alloc.h b/fs/ocfs2/alloc.h
index 27b75cf32cfa..250bcacdf9e9 100644
--- a/fs/ocfs2/alloc.h
+++ b/fs/ocfs2/alloc.h
@@ -61,6 +61,7 @@ struct ocfs2_extent_tree {
ocfs2_journal_access_func et_root_journal_access;
void *et_object;
unsigned int et_max_leaf_clusters;
+ struct ocfs2_cached_dealloc_ctxt *et_dealloc;
};
/*
diff --git a/fs/ocfs2/aops.c b/fs/ocfs2/aops.c
index 209cec7efef4..1cf7ac84b70b 100644
--- a/fs/ocfs2/aops.c
+++ b/fs/ocfs2/aops.c
@@ -2353,6 +2353,12 @@ static int ocfs2_dio_end_io_write(struct inode *inode,
ocfs2_init_dinode_extent_tree(&et, INODE_CACHE(inode), di_bh);
+ /* Attach dealloc with extent tree in case that we may reuse extents
+ * which are already unlinked from current extent tree due to extent
+ * rotation and merging.
+ */
+ et.et_dealloc = &dealloc;
+
ret = ocfs2_lock_allocators(inode, &et, 0, dwc->dw_zero_count*2,
&data_ac, &meta_ac);
if (ret) {
@@ -0,0 +1,41 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Ilya Dryomov <idryomov@gmail.com>
Date: Fri, 3 May 2019 17:27:03 +0200
Subject: [PATCH] rbd: don't assert on writes to snapshots
The check added in commit 721c7fc701c7 ("block: fail op_is_write()
requests to read-only partitions") was lifted in commit a32e236eb93e
("Partially revert "block: fail op_is_write() requests to read-only
partitions""). Basic things like user triggered writes and discards
are still caught, but internal kernel users can submit anything. In
particular, ext4 will attempt to write to the superblock if it detects
errors in the filesystem, even if the filesystem is mounted read-only
on a read-only partition.
The assert is overkill regardless.
Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
---
drivers/block/rbd.c | 8 ++++++--
1 file changed, 6 insertions(+), 2 deletions(-)
diff --git a/drivers/block/rbd.c b/drivers/block/rbd.c
index 1e92b61d0bd5..339cdd4062bb 100644
--- a/drivers/block/rbd.c
+++ b/drivers/block/rbd.c
@@ -3664,8 +3664,12 @@ static void rbd_queue_workfn(struct work_struct *work)
goto err_rq;
}
- rbd_assert(op_type == OBJ_OP_READ ||
- rbd_dev->spec->snap_id == CEPH_NOSNAP);
+ if (op_type != OBJ_OP_READ && rbd_dev->spec->snap_id != CEPH_NOSNAP) {
+ rbd_warn(rbd_dev, "%s on read-only snapshot",
+ obj_op_name(op_type));
+ result = -EIO;
+ goto err;
+ }
/*
* Quit early if the mapped snapshot no longer exists. It's
@@ -1,54 +0,0 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Fabian=20Gr=C3=BCnbichler?= <f.gruenbichler@proxmox.com>
Date: Tue, 3 Apr 2018 14:59:26 +0200
Subject: [PATCH] Revert "UBUNTU: [Packaging] retpoline -- add safe usage hint
support"
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
This (partially) reverts commit 1e39020902132b3065bedf0a0c33031e89f9f57a.
this modifies the upstream kernel build to call an Ubuntu script which
we remove before building. it would also be required by any module
builds afterwards and is not shipped by Ubuntu's kernel packages either.
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
---
scripts/Makefile.build | 10 +---------
1 file changed, 1 insertion(+), 9 deletions(-)
diff --git a/scripts/Makefile.build b/scripts/Makefile.build
index 5d72aa39d3c1..451546219dfc 100644
--- a/scripts/Makefile.build
+++ b/scripts/Makefile.build
@@ -295,27 +295,19 @@ objtool_dep = $(objtool_obj) \
$(wildcard include/config/orc/unwinder.h \
include/config/stack/validation.h)
-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
$(call echo-cmd,checksrc) $(cmd_checksrc) \
$(call cmd_and_fixdep,cc_o_c) \
$(cmd_checkdoc) \
$(call echo-cmd,objtool) $(cmd_objtool) \
$(cmd_modversions_c) \
- $(call echo-cmd,ubuntu-retpoline) $(cmd_ubuntu_retpoline) \
$(call echo-cmd,record_mcount) $(cmd_record_mcount)
endef
define rule_as_o_S
$(call cmd_and_fixdep,as_o_S) \
$(call echo-cmd,objtool) $(cmd_objtool) \
- $(cmd_modversions_S) \
- $(call echo-cmd,ubuntu-retpoline) $(cmd_ubuntu_retpoline)
+ $(cmd_modversions_S)
endef
# List module undefined symbols (or empty line if not enabled)
@@ -0,0 +1,103 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Thomas Lamprecht <t.lamprecht@proxmox.com>
Date: Wed, 3 Apr 2019 18:41:50 +0200
Subject: [PATCH] x86/fpu: backport copy_kernel_to_XYZ_err helpers
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
partial cherry-pick from upstream 5.2 "86/fpu: Restore from kernel
memory on the 64-bit path too"
commit 926b21f37b072ae4c117052de45a975c6d468fec
Author: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Namely, only backport the added helpers, none of the semantic changes.
relevant parts of the original commit message:
> In order to avoid that mess, copy the FPU state from userland, validate
> it and then load it. The copy_kernel_…() helpers are basically just
> like the old helpers except that they operate on kernel memory and the
> fault handler just sets the error value and the caller handles it.
Link: https://lkml.kernel.org/r/20190403164156.19645-22-bigeasy@linutronix.de
(partial cherry picked from commit 926b21f37b072ae4c117052de45a975c6d468fec)
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
---
arch/x86/include/asm/fpu/internal.h | 43 +++++++++++++++++++++++++++++
1 file changed, 43 insertions(+)
diff --git a/arch/x86/include/asm/fpu/internal.h b/arch/x86/include/asm/fpu/internal.h
index fa2c93cb42a2..f3193ab0a2fb 100644
--- a/arch/x86/include/asm/fpu/internal.h
+++ b/arch/x86/include/asm/fpu/internal.h
@@ -122,6 +122,21 @@ extern void fpstate_sanitize_xstate(struct fpu *fpu);
err; \
})
+#define kernel_insn_err(insn, output, input...) \
+({ \
+ int err; \
+ asm volatile("1:" #insn "\n\t" \
+ "2:\n" \
+ ".section .fixup,\"ax\"\n" \
+ "3: movl $-1,%[err]\n" \
+ " jmp 2b\n" \
+ ".previous\n" \
+ _ASM_EXTABLE(1b, 3b) \
+ : [err] "=r" (err), output \
+ : "0"(0), input); \
+ err; \
+})
+
#define kernel_insn(insn, output, input...) \
asm volatile("1:" #insn "\n\t" \
"2:\n" \
@@ -158,6 +173,14 @@ static inline void copy_kernel_to_fxregs(struct fxregs_state *fx)
}
}
+static inline int copy_kernel_to_fxregs_err(struct fxregs_state *fx)
+{
+ if (IS_ENABLED(CONFIG_X86_32))
+ return kernel_insn_err(fxrstor %[fx], "=m" (*fx), [fx] "m" (*fx));
+ else
+ return kernel_insn_err(fxrstorq %[fx], "=m" (*fx), [fx] "m" (*fx));
+}
+
static inline int copy_user_to_fxregs(struct fxregs_state __user *fx)
{
if (IS_ENABLED(CONFIG_X86_32))
@@ -175,6 +198,11 @@ static inline void copy_kernel_to_fregs(struct fregs_state *fx)
kernel_insn(frstor %[fx], "=m" (*fx), [fx] "m" (*fx));
}
+static inline int copy_kernel_to_fregs_err(struct fregs_state *fx)
+{
+ return kernel_insn_err(frstor %[fx], "=m" (*fx), [fx] "m" (*fx));
+}
+
static inline int copy_user_to_fregs(struct fregs_state __user *fx)
{
return user_insn(frstor %[fx], "=m" (*fx), [fx] "m" (*fx));
@@ -400,6 +428,21 @@ static inline int copy_user_to_xregs(struct xregs_state __user *buf, u64 mask)
return err;
}
+/*
+ * Restore xstate from kernel space xsave area, return an error code instead of
+ * an exception.
+ */
+static inline int copy_kernel_to_xregs_err(struct xregs_state *xstate, u64 mask)
+{
+ u32 lmask = mask;
+ u32 hmask = mask >> 32;
+ int err;
+
+ XSTATE_OP(XRSTOR, xstate, lmask, hmask, err);
+
+ return err;
+}
+
/*
* These must be called with preempt disabled. Returns
* 'true' if the FPU state is still intact and we can
@@ -1,168 +0,0 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Christoffer Dall <christoffer.dall@linaro.org>
Date: Mon, 4 Dec 2017 21:35:23 +0100
Subject: [PATCH] KVM: Take vcpu->mutex outside vcpu_load
As we're about to call vcpu_load() from architecture-specific
implementations of the KVM vcpu ioctls, but yet we access data
structures protected by the vcpu->mutex in the generic code, factor
this logic out from vcpu_load().
x86 is the only architecture which calls vcpu_load() outside of the main
vcpu ioctl function, and these calls will no longer take the vcpu mutex
following this patch. However, with the exception of
kvm_arch_vcpu_postcreate (see below), the callers are either in the
creation or destruction path of the VCPU, which means there cannot be
any concurrent access to the data structure, because the file descriptor
is not yet accessible, or is already gone.
kvm_arch_vcpu_postcreate makes the newly created vcpu potentially
accessible by other in-kernel threads through the kvm->vcpus array, and
we therefore take the vcpu mutex in this case directly.
Signed-off-by: Christoffer Dall <christoffer.dall@linaro.org>
Reviewed-by: Cornelia Huck <cohuck@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
(cherry picked from commit ec7660ccdd2b71d8c7f0243f8590253713e9b75d)
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
---
arch/x86/kvm/vmx.c | 4 +---
arch/x86/kvm/x86.c | 16 ++++++----------
include/linux/kvm_host.h | 2 +-
virt/kvm/kvm_main.c | 17 ++++++-----------
4 files changed, 14 insertions(+), 25 deletions(-)
diff --git a/arch/x86/kvm/vmx.c b/arch/x86/kvm/vmx.c
index 6875c8d13052..5dc2144a0991 100644
--- a/arch/x86/kvm/vmx.c
+++ b/arch/x86/kvm/vmx.c
@@ -10017,10 +10017,8 @@ static void vmx_switch_vmcs(struct kvm_vcpu *vcpu, struct loaded_vmcs *vmcs)
static void vmx_free_vcpu_nested(struct kvm_vcpu *vcpu)
{
struct vcpu_vmx *vmx = to_vmx(vcpu);
- int r;
- r = vcpu_load(vcpu);
- BUG_ON(r);
+ vcpu_load(vcpu);
vmx_switch_vmcs(vcpu, &vmx->vmcs01);
free_nested(vmx);
vcpu_put(vcpu);
diff --git a/arch/x86/kvm/x86.c b/arch/x86/kvm/x86.c
index 960b14ba645e..6b1e434ceaf8 100644
--- a/arch/x86/kvm/x86.c
+++ b/arch/x86/kvm/x86.c
@@ -8061,17 +8061,13 @@ struct kvm_vcpu *kvm_arch_vcpu_create(struct kvm *kvm,
int kvm_arch_vcpu_setup(struct kvm_vcpu *vcpu)
{
- int r;
-
vcpu->arch.arch_capabilities = kvm_get_arch_capabilities();
kvm_vcpu_mtrr_init(vcpu);
- r = vcpu_load(vcpu);
- if (r)
- return r;
+ vcpu_load(vcpu);
kvm_vcpu_reset(vcpu, false);
kvm_mmu_setup(vcpu);
vcpu_put(vcpu);
- return r;
+ return 0;
}
void kvm_arch_vcpu_postcreate(struct kvm_vcpu *vcpu)
@@ -8081,13 +8077,15 @@ void kvm_arch_vcpu_postcreate(struct kvm_vcpu *vcpu)
kvm_hv_vcpu_postcreate(vcpu);
- if (vcpu_load(vcpu))
+ if (mutex_lock_killable(&vcpu->mutex))
return;
+ vcpu_load(vcpu);
msr.data = 0x0;
msr.index = MSR_IA32_TSC;
msr.host_initiated = true;
kvm_write_tsc(vcpu, &msr);
vcpu_put(vcpu);
+ mutex_unlock(&vcpu->mutex);
if (!kvmclock_periodic_sync)
return;
@@ -8474,9 +8472,7 @@ int kvm_arch_post_init_vm(struct kvm *kvm)
static void kvm_unload_vcpu_mmu(struct kvm_vcpu *vcpu)
{
- int r;
- r = vcpu_load(vcpu);
- BUG_ON(r);
+ vcpu_load(vcpu);
kvm_mmu_unload(vcpu);
vcpu_put(vcpu);
}
diff --git a/include/linux/kvm_host.h b/include/linux/kvm_host.h
index f182bbfb0ac5..f8b7ac63219d 100644
--- a/include/linux/kvm_host.h
+++ b/include/linux/kvm_host.h
@@ -560,7 +560,7 @@ static inline int kvm_vcpu_get_idx(struct kvm_vcpu *vcpu)
int kvm_vcpu_init(struct kvm_vcpu *vcpu, struct kvm *kvm, unsigned id);
void kvm_vcpu_uninit(struct kvm_vcpu *vcpu);
-int __must_check vcpu_load(struct kvm_vcpu *vcpu);
+void vcpu_load(struct kvm_vcpu *vcpu);
void vcpu_put(struct kvm_vcpu *vcpu);
#ifdef __KVM_HAVE_IOAPIC
diff --git a/virt/kvm/kvm_main.c b/virt/kvm/kvm_main.c
index c6749d154ebc..66998264619b 100644
--- a/virt/kvm/kvm_main.c
+++ b/virt/kvm/kvm_main.c
@@ -172,17 +172,12 @@ bool kvm_is_reserved_pfn(kvm_pfn_t pfn)
/*
* Switches to specified vcpu, until a matching vcpu_put()
*/
-int vcpu_load(struct kvm_vcpu *vcpu)
+void vcpu_load(struct kvm_vcpu *vcpu)
{
- int cpu;
-
- if (mutex_lock_killable(&vcpu->mutex))
- return -EINTR;
- cpu = get_cpu();
+ int cpu = get_cpu();
preempt_notifier_register(&vcpu->preempt_notifier);
kvm_arch_vcpu_load(vcpu, cpu);
put_cpu();
- return 0;
}
EXPORT_SYMBOL_GPL(vcpu_load);
@@ -192,7 +187,6 @@ void vcpu_put(struct kvm_vcpu *vcpu)
kvm_arch_vcpu_put(vcpu);
preempt_notifier_unregister(&vcpu->preempt_notifier);
preempt_enable();
- mutex_unlock(&vcpu->mutex);
}
EXPORT_SYMBOL_GPL(vcpu_put);
@@ -2786,9 +2780,9 @@ static long kvm_vcpu_ioctl(struct file *filp,
#endif
- r = vcpu_load(vcpu);
- if (r)
- return r;
+ if (mutex_lock_killable(&vcpu->mutex))
+ return -EINTR;
+ vcpu_load(vcpu);
switch (ioctl) {
case KVM_RUN: {
struct pid *oldpid;
@@ -2961,6 +2955,7 @@ static long kvm_vcpu_ioctl(struct file *filp,
}
out:
vcpu_put(vcpu);
+ mutex_unlock(&vcpu->mutex);
kfree(fpu);
kfree(kvm_sregs);
return r;
@@ -0,0 +1,105 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Paolo Bonzini <pbonzini@redhat.com>
Date: Thu, 6 Jun 2019 18:52:44 +0200
Subject: [PATCH] KVM: x86: introduce is_pae_paging
Checking for 32-bit PAE is quite common around code that fiddles with
the PDPTRs. Add a function to compress all checks into a single
invocation.
Reviewed-by: Sean Christopherson <sean.j.christopherson@intel.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
(cherry picked from commit bf03d4f9334728bf7c8ffc7de787df48abd6340e)
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
---
arch/x86/kvm/vmx/nested.c | 3 +--
arch/x86/kvm/vmx/vmx.c | 4 ++--
arch/x86/kvm/x86.c | 8 ++++----
arch/x86/kvm/x86.h | 5 +++++
4 files changed, 12 insertions(+), 8 deletions(-)
diff --git a/arch/x86/kvm/vmx/nested.c b/arch/x86/kvm/vmx/nested.c
index d7c52e748966..7bb5801b5e11 100644
--- a/arch/x86/kvm/vmx/nested.c
+++ b/arch/x86/kvm/vmx/nested.c
@@ -944,8 +944,7 @@ static int nested_vmx_load_cr3(struct kvm_vcpu *vcpu, unsigned long cr3, bool ne
* If PAE paging and EPT are both on, CR3 is not used by the CPU and
* must not be dereferenced.
*/
- if (!is_long_mode(vcpu) && is_pae(vcpu) && is_paging(vcpu) &&
- !nested_ept) {
+ if (is_pae_paging(vcpu) && !nested_ept) {
if (!load_pdptrs(vcpu, vcpu->arch.walk_mmu, cr3)) {
*entry_failure_code = ENTRY_FAIL_PDPTE;
return 1;
diff --git a/arch/x86/kvm/vmx/vmx.c b/arch/x86/kvm/vmx/vmx.c
index 835edf9b2954..86c5ab3728ac 100644
--- a/arch/x86/kvm/vmx/vmx.c
+++ b/arch/x86/kvm/vmx/vmx.c
@@ -2729,7 +2729,7 @@ static void ept_load_pdptrs(struct kvm_vcpu *vcpu)
(unsigned long *)&vcpu->arch.regs_dirty))
return;
- if (is_paging(vcpu) && is_pae(vcpu) && !is_long_mode(vcpu)) {
+ if (is_pae_paging(vcpu)) {
vmcs_write64(GUEST_PDPTR0, mmu->pdptrs[0]);
vmcs_write64(GUEST_PDPTR1, mmu->pdptrs[1]);
vmcs_write64(GUEST_PDPTR2, mmu->pdptrs[2]);
@@ -2741,7 +2741,7 @@ void ept_save_pdptrs(struct kvm_vcpu *vcpu)
{
struct kvm_mmu *mmu = vcpu->arch.walk_mmu;
- if (is_paging(vcpu) && is_pae(vcpu) && !is_long_mode(vcpu)) {
+ if (is_pae_paging(vcpu)) {
mmu->pdptrs[0] = vmcs_read64(GUEST_PDPTR0);
mmu->pdptrs[1] = vmcs_read64(GUEST_PDPTR1);
mmu->pdptrs[2] = vmcs_read64(GUEST_PDPTR2);
diff --git a/arch/x86/kvm/x86.c b/arch/x86/kvm/x86.c
index eed14def2a6b..c69f12af5c01 100644
--- a/arch/x86/kvm/x86.c
+++ b/arch/x86/kvm/x86.c
@@ -725,7 +725,7 @@ bool pdptrs_changed(struct kvm_vcpu *vcpu)
gfn_t gfn;
int r;
- if (is_long_mode(vcpu) || !is_pae(vcpu) || !is_paging(vcpu))
+ if (!is_pae_paging(vcpu))
return false;
if (!test_bit(VCPU_EXREG_PDPTR,
@@ -968,8 +968,8 @@ int kvm_set_cr3(struct kvm_vcpu *vcpu, unsigned long cr3)
if (is_long_mode(vcpu) &&
(cr3 & rsvd_bits(cpuid_maxphyaddr(vcpu), 63)))
return 1;
- else if (is_pae(vcpu) && is_paging(vcpu) &&
- !load_pdptrs(vcpu, vcpu->arch.walk_mmu, cr3))
+ else if (is_pae_paging(vcpu) &&
+ !load_pdptrs(vcpu, vcpu->arch.walk_mmu, cr3))
return 1;
kvm_mmu_new_cr3(vcpu, cr3, skip_tlb_flush);
@@ -8590,7 +8590,7 @@ static int __set_sregs(struct kvm_vcpu *vcpu, struct kvm_sregs *sregs)
kvm_update_cpuid(vcpu);
idx = srcu_read_lock(&vcpu->kvm->srcu);
- if (!is_long_mode(vcpu) && is_pae(vcpu) && is_paging(vcpu)) {
+ if (is_pae_paging(vcpu)) {
load_pdptrs(vcpu, vcpu->arch.walk_mmu, kvm_read_cr3(vcpu));
mmu_reset_needed = 1;
}
diff --git a/arch/x86/kvm/x86.h b/arch/x86/kvm/x86.h
index 7e89ed889707..03de3f3c830c 100644
--- a/arch/x86/kvm/x86.h
+++ b/arch/x86/kvm/x86.h
@@ -139,6 +139,11 @@ static inline int is_paging(struct kvm_vcpu *vcpu)
return likely(kvm_read_cr0_bits(vcpu, X86_CR0_PG));
}
+static inline bool is_pae_paging(struct kvm_vcpu *vcpu)
+{
+ return !is_long_mode(vcpu) && is_pae(vcpu) && is_paging(vcpu);
+}
+
static inline u32 bit(int bitno)
{
return 1 << (bitno & 31);
@@ -1,40 +0,0 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Jim Mattson <jmattson@google.com>
Date: Tue, 30 Oct 2018 12:20:21 -0700
Subject: [PATCH] kvm: x86: Don't modify MSR_PLATFORM_INFO on vCPU reset
If userspace has provided a different value for this MSR (e.g with the
turbo bits set), the userspace-provided value should survive a vCPU
reset. For backwards compatibility, MSR_PLATFORM_INFO is initialized
in kvm_arch_vcpu_setup.
Signed-off-by: Jim Mattson <jmattson@google.com>
Reviewed-by: Drew Schmitt <dasch@google.com>
Cc: Abhiroop Dabral <adabral@paloaltonetworks.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
(cherry picked from commit e53d88af63ab4104e1226b8f9959f1e9903da10b)
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
---
arch/x86/kvm/x86.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/x86/kvm/x86.c b/arch/x86/kvm/x86.c
index 6b1e434ceaf8..93bc3504d39e 100644
--- a/arch/x86/kvm/x86.c
+++ b/arch/x86/kvm/x86.c
@@ -8062,6 +8062,7 @@ struct kvm_vcpu *kvm_arch_vcpu_create(struct kvm *kvm,
int kvm_arch_vcpu_setup(struct kvm_vcpu *vcpu)
{
vcpu->arch.arch_capabilities = kvm_get_arch_capabilities();
+ vcpu->arch.msr_platform_info = MSR_PLATFORM_INFO_CPUID_FAULT;
kvm_vcpu_mtrr_init(vcpu);
vcpu_load(vcpu);
kvm_vcpu_reset(vcpu, false);
@@ -8157,7 +8158,6 @@ void kvm_vcpu_reset(struct kvm_vcpu *vcpu, bool init_event)
kvm_pmu_reset(vcpu);
vcpu->arch.smbase = 0x30000;
- vcpu->arch.msr_platform_info = MSR_PLATFORM_INFO_CPUID_FAULT;
vcpu->arch.msr_misc_features_enables = 0;
vcpu->arch.xcr0 = XFEATURE_MASK_FP;
@@ -1,22 +0,0 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Thomas Lamprecht <t.lamprecht@proxmox.com>
Date: Fri, 6 Sep 2019 13:04:30 +0200
Subject: [PATCH] ntb test: remove unused conflicting SZ_4G define
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
---
drivers/ntb/test/ntb_perf.c | 1 -
1 file changed, 1 deletion(-)
diff --git a/drivers/ntb/test/ntb_perf.c b/drivers/ntb/test/ntb_perf.c
index 427112cf101a..1f8ee33a07a2 100644
--- a/drivers/ntb/test/ntb_perf.c
+++ b/drivers/ntb/test/ntb_perf.c
@@ -74,7 +74,6 @@
#define MAX_SRCS 32
#define DMA_OUT_RESOURCE_TO msecs_to_jiffies(50)
#define DMA_RETRIES 20
-#define SZ_4G (1ULL << 32)
#define MAX_SEG_ORDER 20 /* no larger than 1M for kmalloc buffer */
#define PIDX NTB_DEF_PEER_IDX